![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Текста в записях [D6, WinXP]
Hellman © (2002-08-06 08:08:00)Например, еcть запись:
type
rec = record
subj : string[16];
//сюда надо вставить текстовые данные
end;
FRec : file of rec;
Что можно использовать в записях, чтобы сохранить многостроковый текст
в файл????
Leran2002 (2002-08-06 09:12:00) [1]Могу предложить такую структуру (сразу скажу что не тестировал, это только теоретические соображения):
type
rec = record
subj:string[16];
l:integer; // содержит длину строки mystr
mystr:string; // строка
end;
var
f:file;
r:rec;
AssignFile(f,…);
Reset(f,1); // для чтения из существующего файла
Rewrite(f,1); // для создания нового файла
Пример чтения из файла одного элемента
BlockRead(f,r.subj,SizeOf(r.subj));
BlockRead(f,r.l,SizeOf(r.l));
BlockRead(f,r.mystr,r.l);
Для записи
BlockWrite(f,r.subj,SizeOf(r.subj));
r.l:=Length(r.mystr);
BlockWrite(f, r.l,SizeOf(r.l));
BlockWrite(f, r.mystr,r.l);
Leran2002 (2002-08-06 09:09:00) [2]Могу предложить такую структуру (сразу скажу что не тестировал, это только теоретические соображения):
type
rec = record
subj:string[16];
l:integer; // содержит длину строки mystr
mystr:string; // строка
end;
var
f:file;
r:rec;
AssignFile(f,…);
Reset(f,1); // для чтения из существующего файла
Rewrite(f,1); // для создания нового файла
Пример чтения из файла одного элемента
BlockRead(f,r.subj,SizeOf(r.subj));
BlockRead(f,r.l,SizeOf(r.l));
BlockRead(f,r.mystr,r.l);
Для записи элемента
BlockWrite(f,r.subj,SizeOf(r.subj));
r.l:=Length(r.mystr);
BlockWrite(f, r.l,SizeOf(r.l));
BlockWrite(f, r.mystr,r.l);
ЮЮ (2002-08-06 09:01:00) [3]Можно и больше, сделав предположение что, что если начинается с заглавной,то - с новой строки. :-)
Anatoly Podgoretsky (2002-08-06 08:54:00) [4]Можно записхать от одной до 8 строк
ЮЮ (2002-08-06 08:38:00) [5]И как мног0 строк можно запихать в 16 байт? Если это и вся структура, то лучше использовать TextFile вместо file of rec.
Song (2002-08-06 08:34:00) [6]Ну например массив строк