ネットワーク変換(ユニコード)コードで作業していますが、結果は私が望むものではありません。参考のため16進コードをテキストに変換するC#16進文字列が他のページと異なる
、これは私が達成したいものです:http://www.unit-conversion.info/texttools/hexadecimal/例えば
入力 "E5BC B5E6 9F8F E6A6 86" は、 "張柏榆" 受信< -----これは私が必要なもの
ですが、私は私が進文字列「355F CF67を取得するには、次の参照コード
public static string ConvertStringToHex(String input, System.Text.Encoding encoding)
{
Byte[] stringBytes = encoding.GetBytes(input);
StringBuilder sbBytes = new StringBuilder(stringBytes.Length * 2);
foreach (byte b in stringBytes)
{
sbBytes.AppendFormat("{0:X2}", b);
}
return sbBytes.ToString();
}
を使用します8669 "
16進コードを"張柏榆 "に変換しません。
public static string ConvertHexToString(String hexInput, System.Text.Encoding encoding)
{
int numberChars = hexInput.Length;
byte[] bytes = new byte[numberChars/2];
for (int i = 0; i < numberChars; i += 2)
{
bytes[i/2] = Convert.ToByte(hexInput.Substring(i, 2), 16);
}
return encoding.GetString(bytes);
}
アドバイスをいただければ幸いです。
エラーが発生しますか?それはなぜ機能しないのですか? – Clonkex