Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2002.01.14;
Скачать: [xml.tar.bz2];

Вниз

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

 
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;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.45 MB
Время: 0.004 c
1-42403
veles
2001-12-26 08:59
2002.01.14
Копирование файлов


3-42391
shurik
2001-12-13 16:53
2002.01.14
кодировка


6-42537
Denys
2001-10-18 10:18
2002.01.14
Сшивка IP дейтограмм


14-42553
paul_shmakov
2001-11-19 15:10
2002.01.14
Рихтер


1-42443
Пл.
2001-12-24 17:05
2002.01.14
Цикл





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский