没有小数点和 2 位的 C# 双类型格式
C# double type formatting without decimal point and 2 digits
我需要将双精度格式化为包含 15 个字符的字符串,并用零 (0) 向左填充。
该字符串必须包含 2 位数字,但不能包含小数点甚至千位分隔符。
我用下面的代码做到了,但我想知道是否有更好的方法来只使用格式字符串。
double value = 15.85;
CultureInfo info = CultureInfo.GetCultureInfo("en-US");
string s = (value).ToString("F2", info).Replace(".", string.Empty).PadLeft(15, "0"[0]);
//will output 000000000001585
没有办法用格式字符串 纯粹 显示没有小数点的小数位,但是有一种比字符串 replacement/padding 更简单的方法来删除小数点- 只需将值乘以 100:
(value*100).ToString("000000000000000");
double value = 15.85;
string s1 = String.Format("{0:000000000000000}", value); // 000000000000015
string s2 = String.Format("{0:0000.00}", value); // 0015.85
我需要将双精度格式化为包含 15 个字符的字符串,并用零 (0) 向左填充。 该字符串必须包含 2 位数字,但不能包含小数点甚至千位分隔符。
我用下面的代码做到了,但我想知道是否有更好的方法来只使用格式字符串。
double value = 15.85;
CultureInfo info = CultureInfo.GetCultureInfo("en-US");
string s = (value).ToString("F2", info).Replace(".", string.Empty).PadLeft(15, "0"[0]);
//will output 000000000001585
没有办法用格式字符串 纯粹 显示没有小数点的小数位,但是有一种比字符串 replacement/padding 更简单的方法来删除小数点- 只需将值乘以 100:
(value*100).ToString("000000000000000");
double value = 15.85;
string s1 = String.Format("{0:000000000000000}", value); // 000000000000015
string s2 = String.Format("{0:0000.00}", value); // 0015.85