Главная страница
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.085 c
9-1126694611
Signate
2005-09-14 14:43
2006.03.19
Управление источником света OpenGL


2-1141057077
John_Doe
2006-02-27 19:17
2006.03.19
SQL не воспринимает дату


15-1140476564
Германн
2006-02-21 02:02
2006.03.19
Потрепаться vs Прочее


2-1141151460
Darkwing
2006-02-28 21:31
2006.03.19
Команды ассемблера под пентиум 4


2-1141299376
ANB
2006-03-02 14:36
2006.03.19
Как запихнуть LongWord в LongInt ?