Главная страница
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.48 MB
Время: 0.021 c
15-1189250138
Denis_
2007-09-08 15:15
2007.10.07
ПДД


3-1180855837
npu3pak_kz
2007-06-03 11:30
2007.10.07
Копирование/перемещение строк в таблице MS Access


2-1189091338
Igor_
2007-09-06 19:08
2007.10.07
Шрифт в польской Windows XP


15-1189318951
Dmitriy_
2007-09-09 10:22
2007.10.07
Распознавание текста


2-1189425402
ссссс
2007-09-10 15:56
2007.10.07
чтото не так