Iam無法解碼日文信息,最終輸出似乎是垃圾值。解碼引用的可打印信息
編碼ISO-2022-JP引用Printable消息:
「= 82 = B1 = 82 = EA = 82 = CD = 92P = 82 = C8 = 82 = E9 = 83E = 83X =83克= 82 = C5 = 82 = B7 = 82 = DD = 82 = C8 = 82 = B3 = \ r \ n = 82 = F1 = 81A = 82 = B1 = 82 = F1 = 82 = C9 = 82 = BF = 82 = CD 「
代碼,用於解碼引用Printable:
private static string Decode(string input, string bodycharset)
{
var i = 0;
var output = new List<byte>();
while (i < input.Length)
{
if (input[i] == '=' && input[i + 1] == '\r' && input[i + 2] == '\n')
{
//Skip
i += 3;
}
else if (input[i] == '=')
{
string sHex = input;
sHex = sHex.Substring(i + 1, 2);
int hex = Convert.ToInt32(sHex, 16);
byte b = Convert.ToByte(hex);
output.Add(b);
i += 3;
}
else
{
output.Add((byte)input[i]);
i++;
}
}
if (String.IsNullOrEmpty(bodycharset))
return Encoding.UTF8.GetString(output.ToArray());
else
return Encoding.GetEncoding(bodycharset).GetString(output.ToArray());
}
最終輸出:
・ア・・・ヘ・P・ネ・・・e・X・g・ナ・キ・ン・ネ・ウ・・・A・ア・・・ノ・ソ・ヘ
任何想法來解決它?
您的編碼..您使用Encoding.GetEncoding( 「ISO-2022-JP」) – MethodMan 2012-01-09 22:13:37