Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.01.14;
Скачать: 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 вся ветка

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

Наверх




Память: 0.47 MB
Время: 0.012 c
3-42371
Romul
2001-12-11 15:06
2002.01.14
DB Lib для Delphi


1-42486
GreySerg
2001-12-20 17:44
2002.01.14
Как создать Ole обьект вручную,т.е. не используя tlb файл, без регистрации?


7-42585
fsp
2001-09-29 21:15
2002.01.14
sender:Tobject


14-42560
VEG
2001-11-18 22:34
2002.01.14
Крупный шрифт


3-42363
Китаец Ла Ме
2001-12-12 21:40
2002.01.14
Мультиверсионность