我有一个整数变量,最大值为9999。
我可以转换为固定长度的字符串(4个字符):
value.ToString("0000");
我可以将其转换为十六进制:
value.ToString("X");
我想将其转换为四个字符的十六进制字符串(如果值转换为小于四位十六进制值,则在左侧填充0)。我尝试了以下哪些不起作用。
value.ToString("0000:X");
好的,我可以用零来检查十六进制字符串和填充板的长度。
但有没有直截了当的方式?
答案 0 :(得分:34)
在X格式说明符后面使用数字指定左边距:value.ToString("X4")
答案 1 :(得分:9)
String.Format( "{0:X2}", intValue)
答案 2 :(得分:-2)
这是另一种方法, 您可以定义一个函数并将其传递给2个值,一个是实际数字,第二个是要修复的最大长度。 即。
public string FixZero(string str, int maxlength)
{
string zero = "000000000000000000000000000000000000000";
int length = str.Length;
int diff = maxlength- length;
string z = zero.Substring(1, diff);
z = z + str;
return z;
}
你需要格式为0012的整数,FixZero(“12”,4) 或者对于0001234,FixZero(“1234”,7)