int в шестнадцатеричную строку

91

Мне нужно преобразовать int в шестнадцатеричную строку.

При преобразовании 1400 => 578 с использованием ToString("X") или ToString("X2") но мне нужно это как 0578.

Может ли кто-нибудь предоставить мне IFormatter чтобы IFormatter строки составляла 4 символа?

  • 1
    Посмотрите на числовые форматы здесь .
Теги:

4 ответа

141
Лучший ответ

Используйте ToString("X4").

Значение 4 означает, что строка будет содержать 4 цифры.

Ссылка: Спецификатор формата шестнадцатеричного ( "X" ) в MSDN.

  • 2
    Это не хорошо для отрицательных чисел, используйте «короткий» тип вместо «int»
  • 6
    Чтобы напечатать int32, он должен просто использовать «X8», а не «X4». Если вы хотите X4, вы действительно должны использовать Int16.
15

Попробуйте следующее:

ToString("X4")

См. спецификатор формата X в MSDN.

3

Предыдущий ответ не подходит для отрицательных чисел. Используйте короткий тип вместо int

        short iValue = -1400;
        string sResult = iValue.ToString("X2");
        Console.WriteLine("Value={0} Result={1}", iValue, sResult);

Теперь результат FA88

2

Попробуй это:

var id = 100;
var hexid = $"0x{id:X}";

шестнадцатеричное значение:

"0x64"

Ещё вопросы

Сообщество Overcoder
Наверх
Меню