我将BigInteger值格式化为0并获得一个空字符串作为结果.这是预期的行为吗?
System.Numerics.BigInteger value = 0;
string xx = value.ToString("#", System.Globalization.CultureInfo.InvariantCulture);
Run Code Online (Sandbox Code Playgroud)
在这两个语句之后,xx是string.Empty.如果我将值设置为10,我会得到"10".
是的,这是预期的行为.来自MSDN:
如果格式化的值
#在格式字符串中出现" "符号的位置有一个数字,则该数字将复制到结果字符串.否则,结果字符串中的任何位置都不存储任何内容.
强调我的
0如果您始终需要至少一位数,则可以使用格式字符串:
string xx = value.ToString("0", System.Globalization.CultureInfo.InvariantCulture);
Run Code Online (Sandbox Code Playgroud)
产量:
0 → "0"10 → "10"