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

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

Работа с textfile [D6, Win2k]


Manulo ©   (2002-11-28 18:34:00) 

Цитата из хелпа делфи

AssignFile(Input, "");
Reset(Input);
AssignFile(Output, "");
Rewrite(Output);


Где параметр Input - read only...:( Мастера, подскажите, есть ли возможно в уже существующий текстовый файл чё нить дописать не переписывая его полностью (то есть не копировать содержимое в какой либо буфер, попутно изменяя его а потом Rewrite - ом переписывать искомый файл, а просто открыть файл, найти нужную строку и дописать в неё немного текста)?


trotski   (2002-11-28 21:34:00) [1]

Во-во, зачем все усложнять. Используй Append() вместо Reset, чтобы дописать в конец. А уж если не в конец, то тогда через TFileStream


Th   (2002-11-28 21:15:00) [2]

unit tt;

interface
uses Classes;

procedure WriteStringToFile(const filename: string; const s: string; const pos: int64);

implementation

procedure WriteStringToFile;
var FS:TFileStream;

begin
if FileExists(filename) then
FS:=TFileStream.Create(filename,fmReadWrite)
else
FS:=TFileStream.Create(filename,fmCreate);

if pos<=FS.Size then
begin
FS.Seek(soFromBeginning,pos);
FS.Write(s,length(s));
Fs.Free;
end;
end;

end;


jack128   (2002-11-28 19:07:00) [3]

Append вместо reset()


Manulo   (2002-11-28 18:48:00) [4]


> Th ©

Извини, канечна, а поподробнее низя? :)


Th   (2002-11-28 18:42:00) [5]

Открой файл с помощью TFileStream и делай с ним чего хочешь. Только не забудь после всех изменений MyFileStreamObject.Free сделать, иначе изменения в силу не вступят.


Наверх

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