我有一个数字,我需要转换成一个字符串。首先我用了这个:
Key = i.ToString();
但我意识到它的排序顺序很奇怪所以我需要用0填充它。我怎么能这样做呢?
我有一个数字,我需要转换成一个字符串。首先我用了这个:
Key = i.ToString();
但我意识到它的排序顺序很奇怪所以我需要用0填充它。我怎么能这样做呢?
当前回答
如果你喜欢固定宽度,比如10个数字,可以这样做
Key = i.ToString("0000000000");
用你喜欢的数字替换。
i = 123将导致Key = "0000000123"。
其他回答
如果你喜欢固定宽度,比如10个数字,可以这样做
Key = i.ToString("0000000000");
用你喜欢的数字替换。
i = 123将导致Key = "0000000123"。
Try:
Key = i.ToString("000000");
不过,就我个人而言,我想看看是否不能直接对整数进行排序,而不是对字符串表示进行排序。
我找到了一个更好的办法,我一直在尝试,但对我不起作用
Convert.ToDecimal(LN).ToString("000000#");
LN是Int64
int num=1;
string number=num.ToString().PadLeft(4, '0')
输出= " 00001 "
编辑:更改为匹配PadLeft的数量
有关字符串的一些示例,请参阅c#中的字符串格式化。格式
实际上这是一个更好的int格式的例子
String.Format("{0:00000}", 15); // "00015"
或者使用字符串插值:
$"{15:00000}"; // "00015"