Кодовая страница стандартного ввода-вывода Delphi - PullRequest
5 голосов
/ 22 апреля 2010

Delphi 2010

При чтении из файла с использованием процедуры readLn , по умолчанию я получаю строку юникода, преобразованную из кодовой страницы 1251 (кодовая страница windows).

КакМогу ли я изменить это и прочитать из файла в другой кодовой странице, в 1252 или UTF16?

Ответы [ 2 ]

2 голосов
/ 22 апреля 2010

Не используйте ReadLn / WriteLn для нового кода. По предложению Майкла Мэдсена, используйте TStreamReader в SysUtils.

0 голосов
/ 22 апреля 2010

Вы можете использовать TStreamReader - вы можете указать, какую кодировку вы хотите прочитать при его создании.

Например, TStreamReader.Create(FileName, TEncoding.UTF8); создаст TStreamReader, который можно использовать для чтения текста из файла, указанного вFileName, используя UTF-8 в качестве кодировки.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...