2013-07-17 4 views
0

У меня есть некоторые значения int, которые я хочу преобразовать в строку, но в шестнадцатеричном формате. Это шестнадцатеричное значение должно быть отформатировано всегда на 2 цифры.Формат int в шестнадцатеричную строку

Пример ниже:

int a = 10; 
int b = 20; 

//returns the value in hex 
string c = a.toString("x"); // a 
string d = b.toString("x"); // 14 

То, что я хочу, чтобы всегда что результаты шестнадцатеричного значения в двух цифрах. Показывает, как «0a», а не только «a».

Я использую преобразовать Int в отформатированную строку,

int e = 1; 
string f = e.toString("D2"); // 01 

Есть путь к двум вещам вместе? Чтобы преобразовать int в шестнадцатеричную форматированную строку?

+0

Там есть функция Buil-, чтобы сделать это. Почему вы создаете новую функцию для выполнения чего-то, что уже существует? Если вам интересно, все, что вы делаете, это получить биты целого числа, тогда отобразите строку и добавьте '0x' в строку. –

+0

@ Ramhound: Это совсем не ясно, что вы имеете в виду. ОП повторно использует существующий метод «ToString», а не создает свои собственные ... и нет никаких признаков того, что он вообще хочет «0x» в строке. –

ответ

5

вы можете использовать этот

int e = 1; 
string f = e.toString("x2"); 
5

Имейте путь к двум вещам togheter?

Да - вы просто используете x2. У вас уже есть шестнадцатеричный бит с x и частью «2 символа» с D2 - вам просто нужно их объединить.

Для получения дополнительной информации см. Документацию для standard numeric format strings.

Смежные вопросы