在C#中处理前导零

时间:2010-12-09 00:27:53

标签: c# visual-studio-2010

我有一个不应超过7个字符的field1。 field1中的剩余字符应填充前导零。

如果field1为1,则应将其转换为0000001。 如果field1为21,则应将其转换为0000021.

我如何在C#中执行此操作。请帮忙。

3 个答案:

答案 0 :(得分:5)

使用format specifier

 string x = string.Format("{0:0000000}", 21);

答案 1 :(得分:5)

如果你有一个数字,并且你想要一个7位数的字符串表示,那很简单。

1.ToString("0000000");

假设您有任何特定的字符串,并且您希望将其填充为7个字符,并且这些字符碰巧是相同的字符,您也可以这样做。

1.ToString().PadLeft(7, '0');

答案 2 :(得分:0)

另一种解决方案是使用Standard Numeric Format Strings,如下所示:

5.ToString("D7")

为防止整数超过7个字符,可以像这样使用modulo:

(123456789 % 10000000).ToString("D7")

模数应该比在结果字符串中剪切其他字符更快。

因此,每个整数都会产生一个用零填充的7个字符串。