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

Вниз

Сохранить массив, по хитрее   Найти похожие ветки 

 
Sfagnum ©   (2003-08-28 17:09) [0]

есть такой массив:
[code]array of array[0..MAXPLEN, char] of byte;[/code]
его надо сохранять пердически и чаще считывать, не подскажете методу/или_что_там_ещё шоб это делать легко и без болезненно...

хотелось бы обойтись модулем System

заранее спасибо


 
pasha_golub ©   (2003-08-28 17:13) [1]

Я так понял это динамический массив массивов?
наверное, придется ручками


 
Sfagnum ©   (2003-08-28 17:18) [2]

понял правильно...
ну это я так и предполагал...

просто может кто, что подобное делал, подскажут в каком направлении двигать


 
pasha_golub ©   (2003-08-28 17:25) [3]

А чего тут двигать, в цикле по внешнему (динамическому) массиву от 0 до length-1 делаешь.
А там уже BlockWrite


 
Sfagnum ©   (2003-08-28 17:40) [4]

А считывать?


 
pasha_golub ©   (2003-08-28 17:45) [5]

2Sfagnum
Соответствено,
while no eof(f) do
begin
...
BlockRead(...)
end;


 
Sfagnum ©   (2003-08-28 17:46) [6]

мда...
типа обратно в массив ну да ладно спасибо


 
Sfagnum ©   (2003-09-01 10:43) [7]

Проблемы возникли с записью чтением...
пишу в массив таким образом
var
mStates: array of byte;
fo: file;
j: byte
begin
assignfile(fo, "save.out"); rewrite(fo,1);
....
j := length(mStates);
BlockWrite(fo,j,szByte);
BlockWrite(fo,mStates,j);
....
end;


читаю...

var
mStates: array of byte;
fo: file;
j: byte;
begin
assign(fo, "save.out"); reset(fo,szByte);
....
BlockRead(fo,j,szByte);
SetLength(mStates,j);
....
BlockRead(fo,mStates,j);
....
end;


после строки BlockRead(fo,mStates,j); mStates становиться пустым массивом без элементов или с одним - не очень понял...

что здесь не так?


 
Smithson ©   (2003-09-01 10:52) [8]

j*szBytes

Для BlockRead второй параметр Reset не нужен.


 
Романов Р.В. ©   (2003-09-01 10:53) [9]

BlockRead(fo,mStates[0],j);


 
Sfagnum ©   (2003-09-01 11:01) [10]

2 Smithson
забыл дописать
Const szBytes = SizeOf(Byte)
так что умножать на единицу не вижу смысла, хотя оно так вернее...
>Для BlockRead второй параметр Reset не нужен.
не просветите почему, если не влом...

2 Романов Р.В.
Не понял почему, но сработало... или это так динамические массивы считываються?


 
Palladin ©   (2003-09-01 11:56) [11]


> Sfagnum © (01.09.03 11:01) [10]

Идентификатор массива есть указатель



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

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

Наверх




Память: 0.49 MB
Время: 0.014 c
14-33780
Igo
2003-08-23 10:44
2003.09.11
Служебные символы в xml


14-33748
Webson
2003-08-17 22:38
2003.09.11
HHP и HHC


1-33668
BorisKB
2003-08-29 11:49
2003.09.11
PopupMenu в PageControl


1-33539
Юрий Федоров
2003-08-27 18:53
2003.09.11
Внешний COM сервер и потоковая модель


14-33789
Безымянное среднего рода
2003-08-25 04:30
2003.09.11
Ну что, соскучились ? %)