【发布时间】:2016-05-12 11:34:45
【问题描述】:
我有 textBox1,它包含数字 10。我需要让数字 10 加倍小数点。我当前的代码是:
variables.myNum = double.Parse(textBox1);
我已经在变量类中声明了 myNum:
public static double myNum;
使用该代码,我可以将数字 10 翻倍。问题是我也需要小数点所以我想要“10”。如果我写到 textBox1 “10”。它不起作用。
编辑:.ToString("0.00") 给整数小数点,但它也给了我不想要的那两个零。整数只需要点。
编辑:首先我有:
10
10.5
10.58
10.589
我想要:(注意第一个十之后的点)
10.
10.5
10.58
10.589
使用 .ToString("0.00") 我可以得到:
10.00
10.50
10.58
10.58
但我不希望最后出现那些多余的零。只有不为零的点和数字。
【问题讨论】:
-
没有“带小数点的双精度数”这样的概念——它只是一个数字。你什么时候使用
myNum?当您将其转换为字符串时,您基本上应该按照您想要的方式格式化它。 -
您的 SO 个人资料并未说明您居住在哪个国家/地区。当您提出此类问题时,这一点很重要。尝试使用逗号而不是小数点。如果您坚持使用句点,则必须将 CultureInfo.InvariantCulture.NumberFormat 传递给 Parse() 方法。
-
我在 string[] 行 ={...} 中使用 myNum。我可以在那里转换它吗?我想用句号代替逗号。我已经设置 CultureInfo 以便在逗号上加上句号。
-
如果您想要的只是一个后面带有
.的数字,那么您可以适当地舍入小数点,转换为字符串并将.连接到末尾。但我想不出这有什么用 - 我会对你这样做的为什么感兴趣。 -
我正在做一个 G 代码生成器。在 G 代码中,每个数字都必须有一个小数点。如果我在每个数字后加上点,那么十进制数字有两个小数点。
标签: c# winforms double decimal