Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2005.11.27;
Скачать: [xml.tar.bz2];

Вниз

Запись/чтение массива типа 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;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.45 MB
Время: 0.014 c
14-1131121160
psa247
2005-11-04 19:19
2005.11.27
Замена TaskManager


9-1121272440
Turkish
2005-07-13 20:34
2005.11.27
Движение модели за камерой


4-1127969497
Mixer
2005-09-29 08:51
2005.11.27
Balloon Tips & Windows XP


2-1131272291
Er
2005-11-06 13:18
2005.11.27
dll


4-1127551255
Antoha
2005-09-24 12:40
2005.11.27
Как сервисному приложению отловить вход пользователя в систему.





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский