Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.10.24;
Скачать: CL | DM;

Вниз

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;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.045 c
4-1095770435
Falendysh
2004-09-21 16:40
2004.10.24
Окно теряет StayOnTop


1-1097165752
DIS
2004-10-07 20:15
2004.10.24
RichEdit клавишей Enter мы делаем конец строки


1-1097086759
maxz
2004-10-06 22:19
2004.10.24
Проверка нажатых клавиш при автозагрузке программы


1-1097065069
AJ_UA
2004-10-06 16:17
2004.10.24
Как экспортнуть данные в Excel из DBGrid?


1-1097248865
DelphiLexx
2004-10-08 19:21
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
Английский Французский Немецкий Итальянский Португальский Русский Испанский