![]() |
|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
|||
|
|||
![]() Есть Tntmemo1 и Tntmemo2. У обеих tntmemo1.Font.Name:=Arial Sakha Unicode (Якутский шрифт) и там и там могу набрать нац. символы. Нормально отображаются.
Но если набираю в 1-м и записываю так: Код:
procedure TForm1.Button2Click(Sender: TObject); var w:string; procedure writestring(ss:string); var sizess:byte; begin sizess:=length(ss); blockWrite(f,sizess,sizeof(sizess));//Записываю длину blockWrite(f,ss[1],sizess*sizeof(ss[1]));//Записываю строку end; begin w:=utf8encode(tntmemo1.Text); assignfile(f,'1.dat'); rewrite(f,1); writestring(w); closefile(f); end; а во втором читаю так: Код:
procedure TForm1.Button1Click(Sender: TObject); function readstring():string; var sizess:byte; s:string; begin blockRead(f,sizess,sizeof(sizess)); Setlength(s,sizess); blockRead(f,s[1],sizess*Sizeof(s[1])); result:=utf8decode(s); end; begin assignfile(f,'1.dat'); reset(f,1); tntmemo2.Lines.Add(readstring()); closefile(f); end; Скриншот и файл прикрепляю |