Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Файлы которые хранят несколько значений (используеться record) [D7, WinXP]


Drey ©   (2005-01-16 19:06:00) 

Как создать и прочитать файл в который можна записать (прочитать) несколько свойх значений ( string , integer , real)
и причём не одно а несколько. Я слышал что это можно сделать  приблизительно так.....

with Xxxx record
   x1:integer;
   y1:string[15];
end;

потом както присвоить этим переменным значение и записать в файл.
А поточнее может ктото подсказать с примером?


Palladin   (2005-01-16 23:48:00) [1]

:) Это из разряда "А дай-ка я что нибудь отвечу"


begin...end   (2005-01-16 21:50:00) [2]

> Fofka123   (16.01.05 21:39) [3]

А теперь смотрим на тип переменной Info и начинаем думать верхней головой.


Fofka123   (2005-01-16 21:39:00) [3]

Info.SavetoFile('xxx');


begin...end   (2005-01-16 19:57:00) [4]

> Drey ©   (16.01.05 19:06)

Вот пример.

type
 TInfo = record
   Name: String[10];
   Age: Byte;
   ApparatusLength: Byte
 end;

// Процедура записи в файл
procedure WriteToFile;
var
 Info: TInfo;
 F: file of TInfo;
begin
 // Заполняем поля записи
 with Info do
 begin
   Name := 'John Smith';
   Age := 20;
   ApparatusLength := 50
 end;
 // Связываем файловую переменную с маршрутом доступа
 AssignFile(F, 'c:\MyFile.bin');
 // Открываем файл для записи
 Rewrite(F);
 // Записываем в файл содержимое переменной Info
 Write(F, Info);
 // Закрываем файл
 CloseFile(F)
end;

// Процедура чтения из файла
procedure ReadFromFile;
var
 Info: TInfo;
 F: file of TInfo;
begin
 // Связываем файловую переменную с маршрутом доступа
 AssignFile(F, 'c:\MyFile.bin');
 // Открываем файл для чтения
 Reset(F);
 // Читаем из файла в переменную Info
 Read(F, Info);
 // Закрываем файл
 CloseFile(F);
 // Смотрим, что прочиталось в переменную
 with Info do
   ShowMessageFmt('Имя: %s, возраст: %d лет, длина: %d см.', [Name, Age, ApparatusLength])
end;

begin
 WriteToFile;
 ReadFromFile
end.


Выполните этот код (например, вставьте его в обработчик нажатия какой-нибудь кнопки, запустите программу и нажмите кнопку). Посмотрите на образовавшийся файл (c:\MyFile.bin) в текстовом редакторе (Блокноте), затем - в шестнадцатеричном (например, в FAR'е). Разберитесь. Если что-нибудь будет совсем непонятно - спрашивайте.


begin...end   (2005-01-16 19:14:00) [5]


> with Xxxx record

Сие невозможно.

По сабжу: типизированные файлы.


Наверх

Титульная страница Поиск, карта сайта Написать письмо