バイト型配列から文字列に変換する例
Dim bytes As Byte()
' Shift JIS で "abcあいう"
bytes = {&H61, &H62, &H63, &H82, &HA0, &H82, &HA2, &H82, &HA4}
Console.WriteLine(BitConverter.ToString(bytes))
' 出力:61-62-63-82-A0-82-A2-82-A4
'Shift JIS 文字列に変換
Console.WriteLine(System.Text.Encoding.GetEncoding(932).GetString(bytes))
'または
Console.WriteLine(System.Text.Encoding.GetEncoding("shift_jis").GetString(bytes))
' 出力:abcあいう
'UTF-8 文字列に変換
Console.WriteLine(System.Text.Encoding.GetEncoding(65001).GetString(bytes))
'または
Console.WriteLine(System.Text.Encoding.GetEncoding("utf-8").GetString(bytes))
' 出力:abc??????
'日本語 EUC 文字列に変換
Console.WriteLine(System.Text.Encoding.GetEncoding(51932).GetString(bytes))
'または
Console.WriteLine(System.Text.Encoding.GetEncoding("euc-jp").GetString(bytes))
' 出力:abc・・・・
' utf8 で "abcあいう"
bytes = {&H61, &H62, &H63, &HE3, &H81, &H82, &HE3, &H81, &H84, &HE3, &H81, &H86}
Console.WriteLine(BitConverter.ToString(bytes))
' 出力:61-62-63-E3-81-82-E3-81-84-E3-81-86
'Shift JIS 文字列に変換
Console.WriteLine(System.Text.Encoding.GetEncoding(932).GetString(bytes))
'または
Console.WriteLine(System.Text.Encoding.GetEncoding("shift_jis").GetString(bytes))
' 出力:abc縺ゅ>縺・
'UTF-8 文字列に変換
Console.WriteLine(System.Text.Encoding.GetEncoding(65001).GetString(bytes))
'または
Console.WriteLine(System.Text.Encoding.GetEncoding("utf-8").GetString(bytes))
' 出力:abcあいう
'日本語 EUC 文字列に変換
Console.WriteLine(System.Text.Encoding.GetEncoding(51932).GetString(bytes))
'または
Console.WriteLine(System.Text.Encoding.GetEncoding("euc-jp").GetString(bytes))
' 出力:abc・・・・・・
コメント