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

Вниз

Record To File   Найти похожие ветки 

 
Поручик   (2004-10-05 18:25) [0]

Как запихнуть record в file? Вытащить от туда?


 
Мастер ©   (2004-10-05 18:38) [1]

Так же, как и не Record.


 
programania ©   (2004-10-05 18:50) [2]

blockWrite(file,record,sizeOf(record));
blockRead(file,record,sizeOf(record));


 
Суслик ©   (2004-10-05 18:51) [3]

а длинные строки ?
таким же образом - через blockwrite?


 
programania ©   (2004-10-05 19:03) [4]

>Суслик
blockWrite(file,pointer(record)^,length(record));
seek(file,0);
blockRead(file,pointer(record)^,length(record));


 
Суслик ©   (2004-10-05 19:08) [5]


> blockRead(file,pointer(record)^,length(record));

Что такое здесь record? String?
Если да, то АV тебе обеспечен...


 
programania ©   (2004-10-05 19:19) [6]

Record что заказывали: длинная строка
я то проверяю что пишу


 
Суслик ©   (2004-10-05 19:23) [7]


> я то проверяю что пишу

если ты будешь записывать в файл и сразу читать, то все ок.
Но кому на фиг такая запись нужна? :р)))

Нужно записать в одном месте, а прочесть в другом. Как ты будешь читать? Ты же длинну строки не занешь


 
programania ©   (2004-10-05 19:33) [8]

>Суслик
Либо я знаю длину либо читать весь файл и искать конец:
setLength(record,fileSize(file));
blockRead(file,pointer(record)^,length(record));


 
Суслик ©   (2004-10-05 19:36) [9]


>  [8] programania ©   (05.10.04 19:33)


> setLength(record,fileSize(file));

тогда ок.

ЗЫ. Нужно только внимательно посмотреть, что будет при пустой строке. Честно говоря не помню, как в этом случае сработает BlockRead.


 
Поручик   (2004-10-05 22:42) [10]

Сохраняю так:
Assign(F, FileName);
rewrite(F,SizeOf(Hero));
blockWrite(f,Hero,SizeOf(Hero));
CLoseFile(F);
А читаю так:
Assign(F, Filename);
reset(F,SizeOf(Hero));
blockWrite(f,Hero,SizeOf(Hero));

Когда работает программа все сохраняется и грузится,
а если войти и выйти ничего не грузится!


 
XProger ©   (2004-10-05 22:50) [11]


var
F : File of Byte;

FileMode := 64;
// Save
AssignFile(F, FileName);
Rewrite(F);
BlockWrite(F, Hero, SizeOf(Hero));
CloseFile(F);

// Load
AssignFile(F, FileName);
Reset(F);
BlockRead(F, Hero, SizeOf(Hero));
CloseFile(F);


 
Поручик   (2004-10-05 23:03) [12]

Спасибо XProger!
Ещё вопрос, что значит:
FileMode:=64


 
OSokin ©   (2004-10-06 19:08) [13]

Имхо его вообще не надо...


 
Fay ©   (2004-10-06 20:24) [14]

Как эта ветка оказалась в WinAPI?!


 
XProger ©   (2004-10-07 18:58) [15]

При чтении файлов помеченный как "Только для чтения", Reset(F) выдаёт ошибку. А с FileMode = 64 ничего подобного не произойдёт :)


 
Доброжелатель1   (2004-10-07 19:10) [16]

>XProger ©   (07.10.04 18:58) [15]
тогда уж
FileMode := fmOpenRead + fmShareDenyNone;


 
programania ©   (2004-10-07 19:49) [17]

>Rewrite(F);
создает файл с длиной записи 128
>BlockWrite(F, Hero, SizeOf(Hero));
пишет в файл SizeOf(Hero) записей длиной 128
а SizeOf(Hero) байт как вы наверно думали
лучше писать  Rewrite(F,1);



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

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

Наверх





Память: 0.47 MB
Время: 0.036 c
14-1096540377
Sergey_F
2004-09-30 14:32
2004.10.24
Какое ограничение имеет свойство компонента TQuery–SQL по длине?


4-1095597326
nika_ufc
2004-09-19 16:35
2004.10.24
будет ли это работать для ANSI кодировки ?


3-1096203236
Vasis
2004-09-26 16:53
2004.10.24
Поле1||Поле2


14-1096879995
msguns
2004-10-04 12:53
2004.10.24
Как поднять анкету ?


1-1097219208
maxistent
2004-10-08 11:06
2004.10.24
Клик крысой на экране





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