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

Вниз

Из файла в список   Найти похожие ветки 

 
Dragon-zla ©   (2009-12-14 21:36) [0]

Помогите пожалуйста с кодом. Дана запись вида
поле: запись
поле: указатель

У меня не получается реализовать две процедуры : записи в файл и считывания из файла. Подскажите как это реализуется (нужно считать из файла список и записать его).
Список реализуется при помощи указателей


 
Омлет ©   (2009-12-14 21:57) [1]

Что именно вызывает сложность?

procedure SaveData(const FileName: string);
var
 MS: TMemoryStream;
begin
 MS := TMemoryStream.Create;
 try
   // пишем структуры в память
   for to do
     MS.Write(чего надо);

   // сохраняем память
   MS.SaveToFile(FileName);
 finally
   MS.Free;
 end;
end;


Чтение аналогично - в каком порядке записали, в том и читаем.


 
Омлет ©   (2009-12-14 22:03) [2]

Вообще разработка структуры хранения данных - дело не такое простое.
Нужно продумать защиту от порчи данных (контрольные суммы), предусмотреть возможное расширение формата, обратную совместимость и т.п.
Обычно, сначала идет заголовочная часть, в которой описаны размеры данных, количества записей, ссылки на блоки конкретных данных, сигнатура, версия формата, контрольная сумма и т.д.
Потом идут блоки данных, адреса на которые указываются в заголовке. Каждый блок заканчивается контрольной суммой.


 
Leonid Troyanovsky ©   (2009-12-14 22:07) [3]


> Омлет ©   (14.12.09 22:03) [2]

> Вообще разработка структуры хранения данных - дело не такое
> простое.

Не умничай, код давай.

--
Regards, LVT.


 
Германн ©   (2009-12-15 00:28) [4]


> Leonid Troyanovsky ©

Учтем"c.


 
Германн ©   (2009-12-15 00:29) [5]


> Германн ©   (15.12.09 00:28) [4]

Промахнулся веткой. :)



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

Форум: "Начинающим";
Текущий архив: 2010.02.14;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.45 MB
Время: 0.005 c
6-1212475055
ketovchanin
2008-06-03 10:37
2010.02.14
Proxy-Authorization


2-1260437170
yantux
2009-12-10 12:26
2010.02.14
Как поменять цвета ячеек у TStringGrid?


1-1237195269
man Yury
2009-03-16 12:21
2010.02.14
Ошибка 32 при вызове TFileStream


15-1259789497
Игорь Шевченко
2009-12-03 00:31
2010.02.14
Линукс тоже дырки закрывает


8-1202838536
SSW
2008-02-12 20:48
2010.02.14
Проблема с back буфером в direct3d





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский