2013-07-17 134 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

@Rhhound:你一點都不清楚你的意思。 OP正在重用現有的'ToString'方法,而不是構建自己的...並且沒有跡象表明他想要字符串中的「0x」。 –

回答

5

您可以使用此

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

有兩種方法可行嗎?

是的 - 你只是使用x2。你已經有了x的十六進制位和D2的「2個字符」部分 - 你只需要把它們合併。

有關更多信息,請參閱standard numeric format strings的文檔。

相關問題