如何将浮点数转换为字符串?
for (float i = 1000000000; i < 10000000000; i++)
{
//temp never change and it's value is 1000000000
string temp = Convert.ToInt64(i).ToString();
}
这个数字很大,我想把我作为字符串保存在像
这样的文件上1000000001
1000000002
1000000003
答案 0 :(得分:1)
如何将浮点数转换为字符串?
显然:i.ToString()
。请参阅the documentation以了解如何应用格式以获得所需的输出。
然而,有几个笔记:
i
的变量通常表示int
而非float
。for
和float
类型的变量进行迭代是模糊不清的。long
或decimal
。temp永远不会改变,它的值是1000000000
float
的精确度不够来存储与偶数1000000000
一样大的数字,只丢弃最不重要的地方。 Wikipedia:“具有六个或更少有效十进制数字的所有整数都可以转换为IEEE 754浮点值。”这就是结果看起来相同的原因。作为副作用,您的for
周期永远不会结束。
因此,首先,问问自己为什么在第一个地方声明变量类型为float
?特别是因为您的代码中转换为long
,无论如何。考虑使用long
或decimal
。那么你的代码就可以了。