Вниз
Скачать: CL | DM;

Проблема с записью в файл   Найти похожие ветки 

 
RoadRunner   (2001-12-26 17:17) [0]

Привет всем, кто читает это сообщение.
Возникла проблема, помогите пожалуйста.
Как можно записать в типизированный файл и считать из него запись, в которой строка переменной длины.
Например, такой тип

type
MyType = Record
Name : String;
E-Mail : String;
Count : Integer;
end;

Поле Name может быть любой длины, но не хотелось бы писать String[255], так как в файле будут лишние символы,
а это нежелательно...А разбивать запись на отдельные переменные не хотелось бы...

Спасибо Всем, кто прочел мое послание, и еще большее спасибо тем, кто ответит,пришлет пример или даст ссылку на информацию о решении проблемы


 
DStealth   (2001-12-26 17:24) [1]

Пример из хелпа:

type
PhoneEntry = record
FirstName, LastName: string[20];
PhoneNumber: string[15];
Listed: Boolean;
end;

var List1: file of PhoneEntry;



 
MBo ©   (2001-12-26 17:28) [2]

проблема существует. Лучше, видимо, писать вместо тип.файла в Stream, перед строками записывая их длину.


 
Miwa ©   (2001-12-26 21:43) [3]

Советую послушать MBo, так как для того чтобы чего-то записать в типизированный файл, нужно чтобы наперед была известна длинна этого "чего-то". Тоесть если будет записано string[255], то будет все ОК.


 
SergVlad ©   (2001-12-26 22:18) [4]

Если запись преимущественно будет состоять из длинных string, то можно перейти на текстовый файл с разделителем.
Любые не строковые переменные конвертить в строковые
integer в HEX- или DEC-вид
boolean в 0/1
Разумеется получишь накладные расходы, но может оказаться выгоднее.



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

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.008 c
1-42490
Dodge
2001-12-25 02:33
2002.01.14
NMHTTP и MEMO


4-42616
Kyd
2001-11-13 11:18
2002.01.14
SendMessage(MyHandle, WM_SetText, 0, Integer(TextToSet));


1-42498
Alan
2001-12-25 19:16
2002.01.14
Проблемка с постоянным отображением подсказки


1-42499
tovSuhov
2001-12-24 08:37
2002.01.14
Выравнивание текста в ячейках StringGrid`a...


1-42424
Fighter
2001-12-27 05:13
2002.01.14
Как развернуть консольное приложение в полноэкранный режим?




   Наверх