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

Вниз

Как сделать файл с самыми разными данными?   Найти похожие ветки 

 
LordOfRock ©   (2006-02-11 01:53) [0]

Доброй ночи, мастера.

У меня вопрос к вам есть. Как в Delphi можно сделать файл с самыми разными данными, последовательно записанными. Пример:

[НАЧАЛО ФАЙЛА]
Integer-число. Пусть N
String1
String2
String3
...
StringN
Boolean
Integer
...
[Конец файла]


В untyped-файлах нужно размер секции указывать, а здесь размеры разные все. Даже у каждого String-элемента.

Можно-ли? Сдаётся, что нет.....


 
Гаврила ©   (2006-02-11 02:07) [1]

ну так и пиши, в TFileStream
var
 Stream: TFileStream;
 n, L: Integer;
 S: string;
begin
Stream:=TFileStream.Create(<имя файла>, <флаги>)
try
 N:=1;
 Stream.WriteBuffer(N, SizeOf(N))
//Для записи строк целесообразно сначала писать длину, чтобы потом можно было считать
 s:= "блаблабла";
 L:=Length(s);
 Stream.WriteBuffer(L, SizeOf(L));
 Stream.WriteBuffer(s[1], L);
и так далее
размер
finally
Stream.Free;
end;


 
LordOfRock ©   (2006-02-11 02:10) [2]

Гаврила ©   (11.02.06 2:07) [1]

Благодарствую. А про запись длины строк - как говорится, "ясен пень, Тэрэнс" :)


 
Германн ©   (2006-02-11 03:18) [3]


> Благодарствую. А про запись длины строк - как говорится,
>  "ясен пень, Тэрэнс" :)

А ты разве спрашивал "про запись длины строк"?

Можно записать любой файл. Но стандартных средств для "правильного" чтения любого файла в Дэлфи нет! Да и вообще нет нигде и никогда! Имхо.


 
Desdechado ©   (2006-02-11 17:23) [4]

файлы обычно имеют структуру, известную работающим с ними программам
а какой смысл в бесструктурном файле?


 
Anatoly Podgoretsky ©   (2006-02-11 17:28) [5]

Описаная структура очень напоминает текстовый файл.


 
StriderMan ©   (2006-02-11 21:11) [6]

Для такой задачи INI хорошо подходит и TIniFile

или создать класс от TComponent со всеми этими данными в виде свойств в секции published и сохранять в поток! задачка на полстраницы кода



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

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

Наверх




Память: 0.48 MB
Время: 0.055 c
2-1141218554
Yozj
2006-03-01 16:09
2006.03.19
как конструктору вернуть NUL?


15-1141038470
ronyn
2006-02-27 14:07
2006.03.19
Как работают антивирусники?


3-1138109495
VladRaven
2006-01-24 16:31
2006.03.19
Выборка дублей в таблице SQL


3-1138139842
asani
2006-01-25 00:57
2006.03.19
как из striggrid передать данные в БД под sql 2000


3-1138292589
BBCha
2006-01-26 19:23
2006.03.19
Восстановление удаленной записи