Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Программирование и базы данных (http://forum.oszone.net/forumdisplay.php?f=21)
-   -   Сохранение массива TStringList (http://forum.oszone.net/showthread.php?t=49605)

XCodeR 22-05-2005 15:20 326388

Сохранение массива TStringList
 
Можно ли сохранить 2-3-мерный TStringList массив в файл? и потом обратно считать его в программу?

XCodeR 22-05-2005 15:26 326390

Забыл написать - реализации нужна в C++ Builder или Delphi

Savant 24-05-2005 00:26 326738

Xcode
На выбор есть 2 варианта:
1. Быстро, но в несколько файлов; кол-во файлов = произведению размерностей массива. Используем метод SaveToFile в цикле, например так:
Код:

var
  i, k, j: Integer;
  fn: String;
begin
......
  // Сохранение
  for i := 0 to i_max do
    for k := 0 to k_max do
      for j := 0 to j_max do begin
        fn := Format('%2x%2x%2x',[i,k,j]) + '.dat';
        StrListArray[i, k, j].SaveToFile(fn);
      end;
.....
  // Загрузка
  for i := 0 to i_max do
    for k := 0 to k_max do
      for j := 0 to j_max do begin
        fn := Format('%2x%2x%2x',[i,k,j]) + '.dat';
        StrListArray[i, k, j].LoadFromFile(fn);
      end;
.....

2. Медленнее, но в 1 файл. Тут по-простому: сначала пишем в файл размер отдельного TStringList (WriteLn(F, StrListArray[i, k, j].Count)), а потом сам TStringList построчно (WriteLn(F, StrListArray[i, k, j][z]); в четырех вложенных циклах все реализуется :(.

XCodeR 24-05-2005 07:45 326787

сеньку.... ;)


Время: 20:25.

Время: 20:25.
© OSzone.net 2001-