Файл ReadAllLines превращает иностранный язык в тарабарщину ()

Я создаю инструмент, который заменяет некоторый текст в текстовом файле. Моя проблема в том, что File ReadAllLines превращает ивритские символы в Gibberish (странные знаки вопроса)

Кто-нибудь знает, почему это происходит? Обратите внимание, что у меня есть проблемы с ивритом в играх и т. Д. А в Блокноте я не могу сохранить документы на иврите. Я могу писать буквы на иврите, но когда я сохраняю, это говорит мне, что есть проблема с этим.

РЕДАКТИРОВАТЬ - Попробовал это, но он только превратил иврит в обычные вопросительные знаки, а не "специальные"

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);

1 ответ

Решение

Попробуйте использовать кодовую страницу Windows-1255, чтобы получить кодировщик.

var myLines = File.ReadAllLines(@"C:\MyFile.txt",  Encoding.GetEncoding("Windows-1255"));
Другие вопросы по тегам