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

Вниз

МАСТЕРА! Как записывать и считывать из файла длинные строки?   Найти похожие ветки 

 
WinSetup   (2002-12-23 18:14) [0]

МАСТЕРА! Как записывать и считывать из файла длинные строки (более 255 символов)?


 
MBo ©   (2002-12-23 18:24) [1]

объявить их просто как string без указания длины (по умолчанию это AnsiString - длина практически не ограничена)


 
WinSetup   (2002-12-23 18:36) [2]

Спасибо за ответ!
Этот способ будет работать для текстовых файлов. А как работать с нетипиризированными файлами (block/write/read)?


 
MBo ©   (2002-12-23 18:46) [3]

в blockwrite указываешь s[1] и length(s), а при чтении сначала setlength делаешь (длину строки перед ней, конечно, придется писать)


 
WinSetup   (2002-12-23 18:52) [4]

Спасибо! Попробую


 
gsu ©   (2002-12-23 18:53) [5]

Можешь вначале сохранить заголовок с размерностью


 
WinSetup   (2002-12-23 19:04) [6]

var
f:file;
s:string;
begin
s:="qwerty";
assignfile(f,"c:\1.txt");
rewrite(f);
blockwrite(f,s[1],length(s[1]));
closefile(f);
end;

При выполнении в файл записывается 128 байт (а если - length(s), то 768), можно ли записать столько байт, сколько символов содержится в строке?


 
Skier ©   (2002-12-23 19:18) [7]

blockwrite(f,s[1], length(s));
И смотри внимательней...тебе уже MBo всё сказал...


 
WinSetup   (2002-12-23 19:22) [8]

>>Skier
Я же указал, что если использовать length(s), то в файл записывается 768 байт


 
gsu ©   (2002-12-23 19:24) [9]

А причем здесь s[1] ?


 
ZrenBy ©   (2002-12-23 19:27) [10]

Rewrite(f, 1); { Record size = 1 }

The entire block transferred occupies at most Count * RecSize bytes. RecSize is the record size specified when the file was opened (or 128 if the record size was unspecified).


 
WinSetup   (2002-12-23 19:30) [11]

>>ZrenBy
Спасибо!!!



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

Текущий архив: 2003.01.06;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.013 c
3-14961
Андрей М
2002-12-14 07:07
2003.01.06
Определение общего кол-ва записей в базе


14-15261
aga
2002-12-17 07:23
2003.01.06
ДБ


7-15334
Xman
2002-10-28 15:44
2003.01.06
Как можно опредилит ОС


14-15267
Romkin
2002-12-15 16:57
2003.01.06
Дот НЕТ


1-15020
werr
2002-12-24 14:34
2003.01.06
exe перезаписывает сам себя?