运行.NET 4.6和x64构建选项。
No ToString()格式选项似乎适用于长度超过15位的数字,因为它将它们转换为指数格式。
到目前为止我尝试过:
long.ToString("#");
long.ToString("G");
long.ToString("0");
long.ToString("#,#");
long.ToString("0,0");
唯一可行的部分是:
long.ToString("0,0"); //Ex.) 5,149,673,432,170,230
但是,我更喜欢简单的数字。我不想使用:
String.Replace(",", "");
有什么建议吗?
编辑: 解决方案已经尝试过。的ToString(" 0&#34)
完全修复VS2015并清理我的解决方案。它现在按预期工作。
答案 0 :(得分:4)
您可以使用" 0"格式。
long num = 1234567890123456789;
System.Diagnostics.Debug.WriteLine("Str=" + num.ToString("0"));
输出:Str = 1234567890123456789
答案 1 :(得分:1)
如果您确实获得了long
或ulong
,那么
string s = long.MaxValue.ToString() ;
返回预期的字符串"9223372036854775807"
。
虽然
string s = ulong.MaxValue.ToString() ;
返回预期的字符串"18446744073709551615"
。
您确定您处理long
而非某些浮点类型?
答案 2 :(得分:0)
OK
写道:
s1 = 9223372036854775806,s2 = 9223372036854775806