Форум: "Основная";
Текущий архив: 2006.03.19;
Скачать: [xml.tar.bz2];
ВнизКак сделать файл с самыми разными данными? Найти похожие ветки
← →
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;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.012 c