Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2007.10.07;
Скачать: CL | DM;

Вниз

Как лучше и надежней записывакть/читать стринг из файла   Найти похожие ветки 

 
Алик   (2007-09-09 15:09) [0]

Всем добрый день!

Помогите плиз!
Прога производит регулярную запись и чтение стрингов  фиксированной длины из создаваемого прогой файла, например
Owndata.dat.

Делаю это так:

var
   Buffer    : PChar;
   flr         : hFile;
   rdd       : Cardinal;
   StrRead : String;
   StrWrite : String[100];
begin
try    

   CreateFile(........................);

   Buffer := PChar(AllocMem(100));
   WriteFile(flr, PChar(StrWrite)^, 100, rdd, nil);
   ReadFile(flr, Buffer^, 100, rdd, nil);
   StrRead := Buffer;
finally
   Buffer := PChar(AllocMem(0));
End;

Но проблема в том, что частенько прога портит эти стринги, т.е. когда я их считываю получается билиберда.
Может есть другой лучший способ как писать и читать стринги в свои файлы.

Заранее благодарен!


 
Anatoly Podgoretsky ©   (2007-09-09 15:27) [1]

> Алик  (09.09.2007 15:09:00)  [0]

file of StrWrite


 
MetalFan ©   (2007-09-09 15:49) [2]


>    WriteFile(flr, PChar(StrWrite)^, 100, rdd, nil);
>    ReadFile(flr, Buffer^, 100, rdd, nil);

и автор рассчитывает "получить обратно" свою строку таким образом?


 
{RASkov} ©   (2007-09-09 19:15) [3]

type TString100 = String[100];
......
//Запись
procedure TForm1.Button1Click(Sender: TObject);
var F: File of TString100; S: TString100;
begin
 AssignFile(F, "Owndata.dat");
 Rewrite(F);
 try
  S:="Строка до 100 символов";
  Write(F, S);
  .....
 finally CloseFile(F); end;
end;
//Чтение
procedure TForm1.Button2Click(Sender: TObject);
var F: File of TString100; S: TString100;
begin
 AssignFile(F, "Owndata.dat");
 Reset(F);
 try
 while not EOF(F) do begin
  Read(F, S);
  ShowMessage(S);
 end;
 finally CloseFile(F); end;
end;


 
Alexey SVD   (2007-09-09 23:15) [4]

TFileStream


 
Alexey SVD   (2007-09-09 23:15) [5]

Удалено модератором


 
Alexey SVD   (2007-09-09 23:15) [6]

Удалено модератором



Страницы: 1 вся ветка

Текущий архив: 2007.10.07;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.015 c
15-1189200756
Petr V. Abramov
2007-09-08 01:32
2007.10.07
славные 90-е РФ


6-1171007451
inex
2007-02-09 10:50
2007.10.07
работа с IdFTP


2-1189156881
voe
2007-09-07 13:21
2007.10.07
Смена DataSource у DBGrid


15-1188941829
Германн
2007-09-05 01:37
2007.10.07
Скорость анимации. Глупый, но интересный для меня вопрос.


4-1175630984
LuceferAB
2007-04-04 00:09
2007.10.07
как показать форму не отбирая фокуса