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

Вниз

Чтение данных из типизированного файла   Найти похожие ветки 

 
Yeg   (2006-02-28 15:58) [0]

Здравствуйте! Мне надо прочитать из файла определённую структуру данных. Описание типа файла у меня есть. Я первый раз пытаюсь сделать сабж, поэтому у меня особо ничего не получается.
Как я делаю:
1. Описываю структуру файла в Delphi:

type
 filestr = record
   //тут пишу, что есть что, т.е. к примеру name: string; surname: string; age: byte;
   end;


2. В переменных:

 f: file of filestr;
 block: filestr;


3. Далее, я читаю всё это дело из файла:

AssignFile(f, ".\filename.dat");
reset(f);
Read(f, block);
Closefile(f);


Но потом оказывается, что прочиталось не совсем то, что надо. Может ли это быть из-зи того, что мне надо только часть файла прочитать, а я в filestr описываю как бы, как целый файл, а на самом деле, это только один блок, часть файла?
Структуру я точно описываю правильно.


 
MBo ©   (2006-02-28 16:01) [1]

>к примеру name: string;
При данном методе записи-чтения нельзя использовать поля - длинные строки.
Компилятор, кстати, должен предупреждать об этом


 
Yeg   (2006-02-28 16:02) [2]

Ой, извините, я не так писал...

string[32]

Вот так, например. Так же можно?


 
novice_man ©   (2006-02-28 16:06) [3]

Yeg   (28.02.06 15:58)
filestr = packed record
А вообще, проверь в каком-либо редакторе (UEdit например) что там записано.


 
Yeg   (2006-02-28 16:35) [4]

А чем отличается packed record от просто record?

UEdit, если я ту ссылку нашёл, очень много весит (~6mb). А никакой другой программы нет? Меньше размером?


 
MBo ©   (2006-02-28 16:38) [5]

>string[32]
>Вот так, например. Так же можно?
Да, можно.
http://www.delphikingdom.ru/asp/viewitem.asp?catalogid=843


 
begin...end ©   (2006-02-28 16:39) [6]

А можно полный код записи и чтения увидеть?


 
Yeg   (2006-02-28 16:42) [7]

MBo ©   (28.02.06 16:38) [5]

Ухты! Спасибо за статью!

begin...end ©   (28.02.06 16:39) [6]

У меня только чтение. Я всё в [1] в 3-ем пункте описал. Это полный код.



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

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

Наверх





Память: 0.46 MB
Время: 0.014 c
15-1140863339
DVD
2006-02-25 13:28
2006.03.19
Есть ли такой переходничёк...


2-1141203400
pound
2006-03-01 11:56
2006.03.19
сохранение данных


1-1139914089
Азазелло
2006-02-14 13:48
2006.03.19
вопрос по TWordDocument...


3-1138541855
zzz2
2006-01-29 16:37
2006.03.19
Как задать значения в полях DBGrid по умолчанию?


2-1141584169
Варяг
2006-03-05 21:42
2006.03.19
Вопрос по EhLib





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