我对c#编程很新。我想知道如何在c#中为整数类型添加前导零。
例如:
int value = 23;
我想像这样使用它;
0023
提前致谢
答案 0 :(得分:8)
你做不到。 int
中没有此类上下文信息。整数只是一个整数。
如果你在谈论格式化,你可以使用类似的东西:
string formatted = value.ToString("0000");
...这将确保至少有4位数字。 (格式字符串“D4”将具有相同的效果。)但是您需要非常清楚地认为这是仅在字符串表示中相关...它不是<的一部分由value
表示的em>整数值。类似地,value
没有关于它是十进制还是十六进制的概念 - 再次,这是你如何格式化它的属性。
(在这样的相当简单的情况下理解这一点非常重要,因为它往往会对日期/时间值等事情产生很多更多的差异,而这些事情也不会存储任何格式信息,人们常常感到困惑。)
请注意,可能会让您感到惊讶的一种类型:decimal
。虽然它不考虑前导零,但它确实有一个尾随零的概念(隐含在它存储的方式中),所以1.0m和1.00m 是可区分的值。
答案 1 :(得分:2)
整数不接受前导零,它只保存整数的实数值。 我们拥有前导零的最好方法是将其转换为字符串。
如果您总是需要4位数值,请使用.ToString
格式添加前导0's
。
int value = 23;
var result = value.ToString("0000");
或者如果你想要一个前导00到任何数字,最好将00附加到相当于整数的字符串。
int value = 23;
var result = "00" + value.ToString();
答案 2 :(得分:1)
基本上你想添加填充零。
字符串格式说明符有一个非常简单的方法。
string valueAfterpadding;
int value = 23;
valueAfterpadding = value.ToString("D4");
Console.WriteLine(valueAfterpadding );
这解决了你的问题。只是谷歌吧。
答案 3 :(得分:0)
这不是编程问题。数字没有前导零。
这里有两件事你可以做:
如果是数字,请在出路时格式化。
如果它类似于代码(商品编号等) - 那些不是数字。
第二点很重要。社会安全号码,零件号等等都是字符串 - 只允许使用数字字符。您永远不会添加或减去它们,您必须为格式更改做好准备。它们不是整数或任何其他数字形式。