前几天我问了一个关于德国特殊人物的问题。 我现在可以对ö,ä或ü等字符进行编码和解码。但是......剩下一些字符,我也需要对它们进行编码/解码。
例如,失败的字符:²³€ÜÖÄ~'§
这是代码:
private static byte[] MyGetBytesArray(string data)
{
Encoding enc = new UTF8Encoding(true, true);
return enc.GetBytes(data);
}
private static string MyGetString(byte[] data)
{
Encoding enc = new UTF8Encoding(true, true);
return enc.GetString(data);
}
我正在寻找编码/解码所有字符的解决方案。我正在写一个加密/解密algorythm,我不知道用户会粘贴到程序中。我需要回馈完全相同的东西。
再次感谢您的帮助..
编辑: 好的,UnicodeEncoding有效(我认为)。现在是我的加密/解密algoryth:/我仍然不确定发生了什么(我用它做零件。在Unicode编码期间,零在每个字符之后),但编码特殊字符wokrs。至少那个测试是成功的:
string text = File.ReadAllText(opd.FileName, Encoding.Default);
byte[] byt = getBytesArray(text);
string text2 = getString(byt);
if (text2 == text)
{
MessageBox.Show("OK");
}
else
{
MessageBox.Show("FAIL");
}
顺便说一句。 Encoding.Default是对的吗?
答案 0 :(得分:2)
不幸的是,这些字符是Unicode,因此您将无法使用UTF8Encoding类。
请尝试使用UnicodeEncoding类。
答案 1 :(得分:2)
尝试使用UnicodeEncoding。
var encoding = new UnicodeEncoding();
return Write(encoding.GetBytes(s));