Вниз
Скачать: 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-42408
$Hic0
2001-12-26 20:11
2002.01.14
TMemo


14-42557
VEG
2001-11-19 16:23
2002.01.14
Ут, блин, ФОРМАТЫ WAV:-(


3-42337
victor
2001-12-10 07:47
2002.01.14
добавление записи с если первичный индекс автоинкрементный


1-42489
AndrewK
2001-12-24 17:49
2002.01.14
Как организовать систему?


3-42394
Dim
2001-12-10 09:20
2002.01.14
Аналог в InterBase функции SUBSTRING MSSQL 6.5




   Наверх