Цитата:
Сообщение от Karsh
Кстати, для сохранения юникодовой информации в файл сначала нужно записать сигнатуру, а потом текст. Поверьте, так будет лучше для всех.)
По аналогии с вашей программой:
Код:
var
s: string;
...
s:= #FF#FE;
BlockWrite(f, PChar(s)^, 2);
И еще заметил:
Код:
BlockWrite(f, PWideChar(WStr)^, Length(WStr));
Тут нужно Length(WStr) умножить на два, т.к. Length выдаёт только кол-во букв, а в юникоде буква - 2 байта, а не 1 как в анси.
|
ага всем спасибо так и сделал,проблема решена.правда не стал длинну умножать на два,а то эта длинна кракозябрами заменялась

и еще перед сохранением вручную пришлось удалять знак вопроса вначале текста в мемо,и при сохранении в строке
s:= #FF#FE;
BlockWrite(f, PChar(s)^, 2);
мой дельфи не понял что такое #FF#FE ,пришлось числами писать, и еще где цифра 2, заменил ее на 1,а то перед текстом пробел появлялся.теперь всё норм
