web-dev-qa-db-ja.com

先頭にゼロを付けてintを16進数に変換します

Int(4バイト)をサイクルなしで16進数( "_XX XX XX XX_")に変換する方法は?

例えば:

_i=13 hex="00 00 00 0D"
_

i.ToString("X")は_"D"_を返しますが、4バイトの16進数値が必要です。

38
user2264990

Xフォーマット文字列に必要な16進数字を追加することにより、最小桁数を指定できます。 2つの16進数が1バイトに対応するため、4バイトの例では8つの16進数が必要です。つまり、i.ToString("X8")を使用します。

小文字が必要な場合は、xの代わりにXを使用します。たとえば、13.ToString("x8")0000000dにマップされます。

63
CodesInChaos

これを試して:

int innum = 123;
string Hex = innum .ToString("X");  // gives you hex "7B"
string Hex = innum .ToString("X8");  // gives you hex 8 digit "0000007B"
11
KF2