我正在尝试获取和解析一个在线的Excel文档,该文档使用希伯来语编写,但遗憾的是使用了非希伯来语编码。
例如,我正在尝试使用C#代码将以下字符串转换为希伯来语,该字符串作为第1个工作表名称:"âìéåï_1",但我无法做到。
我知道上述内容可以转换,因为当我在NotePad++中打开它并选择Encoding/Character Sets/Hebrew/Windows 1255时,我可以看到:"גליון_1",这是上述字符串的正确希伯来语表示。
我正在使用以下代码:
string str = "âìéåï_1";
Encoding windows = Encoding.GetEncoding("Windows-1255");
Encoding ascii = Encoding.GetEncoding("Windows-1252");
byte[] asciiBytes = ascii.GetBytes(str);
byte[] windowsBytes = Encoding.Convert(ascii, windows, asciiBytes);
char[] windowsChars = new char[windows.GetCharCount(windowsBytes, 0, windowsBytes.Length)];
windows.GetChars(windowsBytes, 0, windowsBytes.Length, windowsChars, 0);
string windowsString = new string(windowsChars);
我认为原始字符串的编码是 Windows-1252,因为当我将其粘贴到 NotePad++ 中并将编码更改为 Windows-1252 时,该字符串保持不变...
我可能在做错什么,有人知道如何正确转换吗?
谢谢,
Mikey