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

Вниз

Запись/чтение массива типа Recored в/из файла через TFileStream   Найти похожие ветки 

 
Fostr   (2005-11-11 18:18) [0]

Господа! Вопрос такой: Нажимаем кнопку и данные из TListBox-а пишутся в файл через TFileStream. Эти данные - есть массив из 6 чисел типа "запись". Вот код:

procedure TForm1.Button3Click(Sender: TObject);
var
F: TFileStream;
ListOfFiles: FileList;
I: Integer;

begin
 F:=TFileStream.Create("Lst.dat",fmCreate);
For I:=0 to ListBox1.Count-1 do
  begin
   ListOfFiles.List[I]:= ListBox1.Items[I];
  end;
F.Write(ListOfFiles,SizeOf(ListOfFiles.List));
F.Free;
end;

Нажимая вторую кнопочку я хочу эти данные из файла загрузить обратно в TListBox:

procedure TForm1.Button4Click(Sender: TObject);
var
F: TFileStream;
ListOfFiles: FileList;
I: Integer;

beginF:=TFileStream.Create("Lst.dat",fmOpenRead);
F.Read(ListOfFiles,SizeOf(ListOfFiles.List));
F.Free;

For I:=0 to 5 do
    begin
      ListBox1.Items.Strings[I]:=ListOfFiles.List[I];
    end;
end;

Пока у меня ЯВНО указан размер массива типа запись

Type
FileList = Record
List: array  [0..5] of String[12];    
end;

ВСЕ ЧУДНЕНЬКО РАБОТАЕТ. Но стоит только массив сделать динамическим, начинают выпадать ошибки и в файл пишется черт знает что (НЕСМОТРЯ НА ТО, ЧТО Я ОБЪЯВЛЯЮ ЕГО ДЛИНУ В ПРОЦЕССЕ ВЫПОЛНЕНИЯ ПРОГРАММЫ).

Пршу помощи в решении этой загадки!


 
SPV   (2005-11-11 18:49) [1]

Массив какой
 List: array of String;
или
 List: array of String[12];


 
Fostr   (2005-11-11 20:29) [2]

List: array of String[12]
( какая будет разница в результате) заранее спасибо


 
begin...end ©   (2005-11-11 20:33) [3]

> Fostr   (11.11.05 18:18)

Переменная динамического массива представляет собой указатель на блок памяти, в котором расположены элементы массива. Дело в этом.



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

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

Наверх




Память: 0.47 MB
Время: 0.042 c
8-1120430070
Fantasy
2005-07-04 02:34
2005.11.27
помогите DSPack


14-1131482727
Gero
2005-11-08 23:45
2005.11.27
Ага!


14-1130995811
Ega23
2005-11-03 08:30
2005.11.27
С днем рождения! 3 ноября


2-1131647329
dj0n
2005-11-10 21:28
2005.11.27
Отчеты для БД.


1-1130960389
John Doe
2005-11-02 22:39
2005.11.27
StringGrid и MouseToCell