Чтение unicode символы от текстового файла в Delphi 2009

У меня есть следующая часть кода, чтобы считать японские символы Kanji из Текстового файла формата UTF-8 и затем загрузить его в Заметку.

Var F:textFile;
S:string;
Begin
 AssignFile(F,'file.txt');
 Reset(F);
 While not EoF(F) do
 Begin
  Readln(F,S);
  Memo1.Lines.Add(S);
 End;
 CloseFile(F);
End;

Но вместо символов я вижу некоторый набор полностью различных символов, не связанных с японским набором. Какие-либо подсказки?

5
задан RRUZ 23 April 2011 в 00:45
поделиться

2 ответа

Используйте Memo1.Lines.LoadFromFile или LoadFromStream . TextFile все еще использует ANSI даже в Delphi 2009.

9
ответ дан 14 December 2019 в 01:07
поделиться

Перед использованием строк вам необходимо преобразовать их в UTF-16, который используется в Windows.

Изменить: поиск в Google приводит к появлению функции UTF8ToWideString.

0
ответ дан 14 December 2019 в 01:07
поделиться
Другие вопросы по тегам:

Похожие вопросы: