c# - 文件 ReadAllLines 将外语变成乱码 (�)

标签 c# string hebrew

我正在创建一个工具来替换文本文件中的一些文本。我的问题是 File ReadAllLines 将希伯来字符变成了乱码(奇怪的问号 �)

有人知道为什么会这样吗?请注意,我在游戏等方面确实遇到希伯来语问题。在记事本中,我无法保存希伯来语文档。我可以写希伯来字母,但当我保存时它告诉我这有问题。

编辑 - 试过这个,但它只会将希伯来语变成常规问号而不是“特殊”问号 -

string[] lines = File.ReadAllLines(fullFilenameDir);
byte[] htmlBytes = Encoding.Convert(Encoding.ASCII, Encoding.Unicode, Encoding.ASCII.GetBytes(String.Join("\r\n", lines)));
char[] htmlChars = new char[Encoding.Unicode.GetCharCount(htmlBytes)];
Encoding.Unicode.GetChars(htmlBytes, 0, htmlBytes.Length, htmlChars, 0);

最佳答案

尝试使用 Windows-1255获取编码器的代码页。

var myLines = File.ReadAllLines(@"C:\MyFile.txt",  Encoding.GetEncoding("Windows-1255"));

关于c# - 文件 ReadAllLines 将外语变成乱码 (�),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17042439/

相关文章:

javascript - 如何检测浏览器的哪一侧是滚动条 - 右侧或左侧(在 RTL 的情况下)?

c# - 为什么 [EnableCors ("*"、 "*"、 "*")] 不允许所有请求?

java - getBetween 特定页面上的两个字符串?

Node.js 将对象转换为字符串并将字符串转换为对象?

java - 希伯来语在 netbeans 中显示为问号

xml - raku 语法的标记不会命中文档的第一次出现,但会命中类似的后续出现

c# - 如何将 Entity Framework 添加到控制台应用程序(包括图像)

c# - 有没有办法否定谓词?

c# - 有哪些免费/公共(public)的流行网络服务?

string - 在 Julia 中用不同的字符串替换相同字符串的匹配巴黎