У меня теперь есть проблема, когда символ Цельсия читается как C вместо ° C.Кодировка файла при чтении файла с помощью StreamReader
Похож на кодировку преступника. Я пытался сделать это:
using (StreamReader sr = new StreamReader(this._inFilePath,System.Text.Encoding.Unicode ,true))
вместо
using (StreamReader sr = new StreamReader(this._inFilePath))
, но я теперь получаю мусор .... это оригинальное кодирование файла должно соответствовать кодировке StreamReader? Я использую Compact Framework 2.0.
Я нашел this в сети, но если это используется, я прочитал все это в байтовый массив, обнаружил конец каждой строки, конвертировал его в Юникод, а затем продолжил логику программы. Кто-нибудь использовал этот класс?
Что было первоначальное кодирование файла? –
utf-8. Если я передаю utf-8 в качестве параметра в устройство чтения потока, данные считываются, но celsius становится C – sarsnake
, поэтому файл должен быть сохранен в unicode для чтения в Unicode? Простите глупый вопрос – sarsnake