Преобразовать число в шестнадцатеричное значение в.NET
Мне нужно преобразовать целое число в шестнадцатеричное значение. Это будет выглядеть так:
0x0201cb77192c851c
Когда я делаю
string hex = int.ToString("x")
в C# возвращается
201cb77192c851c
Как я могу получить требуемый результат?
2 ответа
Решение
Одним из способов является добавление нужного количества цифр после "х". Это будет дополнять вывод начальными нулями по мере необходимости.
"0x" + myLong.ToString("x16");
или же
string.Format("0x{0:x16}", myLong);
Из шестнадцатеричного ("X") спецификатора формата:
Спецификатор точности указывает минимальное количество цифр, желаемое в результирующей строке. При необходимости число дополняется нулями слева от него, чтобы получить количество цифр, заданное спецификатором точности.