Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.12.02;
Скачать: CL | DM;

Вниз

Нетипизированный файл   Найти похожие ветки 

 
New_Proger   (2002-11-21 22:14) [0]

Друзья!

Я хочу чтобы у меня был файл, в котором был заголовок
(88 байт), а потом шла куча записей по 128 байт каждая.

Как читат и писать такой файл?


 
MBo ©   (2002-11-21 22:19) [1]

Например, TFileStream


 
Anatoly Podgoretsky ©   (2002-11-21 22:20) [2]

TFileStream


 
TTCustomDelphiMaster ©   (2002-11-21 22:46) [3]

Может лучше пожертвовать 40 байтами и сделать типизированный?


 
Anatoly Podgoretsky ©   (2002-11-21 23:00) [4]

Зачем жертвовать, с пользой использовать, все таки 40 байт


 
New_Proger   (2002-11-22 00:53) [5]

Как использовать TFileStream?


 
Aleks1   (2002-11-22 03:48) [6]

А зачем обязательно TFileStream?
Заголовок (автор точно указал его длину) считывается BlockRead"ом в некую структуру интересующую автора. После этого, и с учетом считанной при этом информации идет последовательное чтение, опять же BlockRead"ом "кучи записей".


 
Дмитрий К.К. ©   (2002-11-22 07:24) [7]

Да лучше базы юзать. Уже все реализовано (поиск, индексы, сортировка).


 
[NIKEL] ©   (2002-11-22 08:05) [8]

->Дмитрий К.К.(22.11.02 07:24)

ну не скажи, не для всего базы предназначены, есть задачи где лучше использовать именно типизированные файлы - можно выграть как в скорости так и в размерах данных.
И поиск можно быстро реализовать, и индексную информацию недолго прекрутить


 
Дмитрий К.К. ©   (2002-11-22 08:24) [9]


> [NIKEL] © (22.11.02 08:05)


Ну можно юзать легкие альтернативы BDE ;)


 
[NIKEL] ©   (2002-11-22 08:34) [10]

->Дмитрий К.К. © (22.11.02 08:24)

> [NIKEL] © (22.11.02 08:05)
Ну можно юзать легкие альтернативы BDE ;)


Никто про BDE и неговорит :) про него ваще надо молчать :) и никому неговорить =)



 
Valentain ©   (2002-11-22 09:36) [11]

...а может сделать типа Wav-файла: заголовок, данные, что-то в духе ...

NoTypeFile = Record
count: integer; // кол-во записей
DopInf: String; // для "себя"
MyTypeData: array[1..count] of TMyTypeData;
// определенные записи
end;


С уважением...


 
[NIKEL] ©   (2002-11-22 09:47) [12]

2Valentain
я также делаю
сначала идет заголовок
потом идет размер индексной информации
а потом идут сами данные
А еше прикольнее использовать IStorage.


 
Udjin ©   (2002-11-22 10:48) [13]

Можно использовать BlockRead, BlockWrite. Если нужно считывать блоки, например по одному байту, то установить с помощью процедуры Reset(), размер блока.

Reset (MyFile, 1)


 
Anatoly Podgoretsky ©   (2002-11-22 11:49) [14]

Если автор не пойдет на реорганизацию в сторону типизированного файла, то для нетипизированный RFileStream более удачен чем BlockRead, BlockWrite.

Неизвестно точно его задача, можно ли сменить размер первого блока с 88 байт на 128


 
Дмитрий К.К. ©   (2002-11-22 12:42) [15]

Толян, а чё за RFileStream? Какой-то новый тип данных?



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

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

Наверх




Память: 0.49 MB
Время: 0.043 c
6-4551
megatrend
2002-09-25 18:22
2002.12.02
Обсуждение статьи


3-4220
jen_bond
2002-11-13 21:39
2002.12.02
Ежесекундное обнавление данных


1-4384
Niko
2002-11-20 18:18
2002.12.02
SynEdit


1-4434
Пиноккио
2002-11-20 00:25
2002.12.02
Печать с точным позиционированием на матричных принтерах


6-4538
-Drive
2002-10-05 19:46
2002.12.02
Мастера ! прошу помочь с отсылкой данных!!!