C# で16進数表記の文字列からバイト配列に格納したり
バイト配列から16進数表記の文字列に変換する方法はない?ようですね
どうやら自前でやるしかないということで作りました
もっと手軽な方法がありそうな気もしますが...
public byte[] HexToByte(string hex)
{
int j = 0;
// 2文字ずつバイト配列に格納
Byte[] b= new Byte[hex.Length / 2];
try
{
// 2バイトずつループする
for (int i = 0; i < hex.Length - 1; i += 2)
{
// 16進数表記の文字列をバイトに変換する
b[j] = Byte.Parse(String.Concat(hex[i], hex[i + 1]), System.Globalization.NumberStyles.HexNumber);
j++;
}
}
catch {}
// バイト配列を返す
return b;
}
public string ByteToHex(byte[] b)
{
StringBuilder Hex = new StringBuilder(b.Length * 2);
foreach (byte bit in b)
{
// 文字列表記の16進数にバイトを変換する
hex.Append(bit.ToString("x"));
}
return hex.ToString();
}