Ответ 1
Используйте число после спецификатора формата X, чтобы указать левое заполнение: value.ToString("X4")
У меня есть целочисленная переменная с максимальным значением 9999.
Я могу преобразовать строку фиксированной длины (4 символа):
value.ToString("0000");
и я могу преобразовать его в hex:
value.ToString("X");
Я хочу преобразовать его в шестнадцатеричную строку из четырех символов (дополненную 0 слева, если значение преобразуется в шестнадцатеричное значение менее четырех цифр). Я попробовал следующее, которое не сработало.
value.ToString("0000:X");
ОК, я могу проверить длину шестнадцатеричной строки и оставить левую с нулями.
Но есть ли простой способ?
Используйте число после спецификатора формата X, чтобы указать левое заполнение: value.ToString("X4")
String.Format( "{0:X2}", intValue)
Вот еще один метод, Вы можете определить функцию и передать ей 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)