Форум: "Основная";
Текущий архив: 2004.01.26;
Скачать: [xml.tar.bz2];
ВнизTFileStream Найти похожие ветки
← →
Prankster (2004-01-10 19:16) [0]пытаюсь скопировать из одного файла в другой с помощью TFileStream, вылетает с ошибкой
вот код:
var a,b:TfileStream;
i:integer;
s:string;
begin
a:=TFileStream.Create(Edit1.Text,fmOpenRead,0);
b:=TFileStream.Create(edit2.Text,fmOpenReadWrite,0);
a.Position:=0;
while a.Position<=a.Size do begin
a.Read(s,1);
b.Write(s,1);
a.Position:=a.Position+1;
end;
a.Destroy;
b.Destroy;
end;
← →
Andy BitOff (2004-01-10 19:21) [1]позволяет скопиpовать как весь файл пpи From и Count = 0,
так и пpоизвольный его кусок.
function CopyFile( InFile,OutFile: String; From,Count: Longint ): Longint;
var
InFS,OutFS: TFileStream;
begin
InFS := TFileStream.Create( InFile, fmOpenRead );
OutFS := TFileStream.Create( OutFile, fmCreate );
InFS.Seek( From, soFromBeginning );
Result := OutFS.CopyFrom( InFS, Count );
InFS.Free;
OutFS.Free;
end;
try..except pасставляются по вкусу, а навоpоты вpоде установки
атpибутов,даты и вpемени файла и т.п. для ясности удалены, да и не нужны
они в основном никогда.
Не моё, но прекрасно работает
← →
Prankster (2004-01-10 19:40) [2]пасибо
← →
Prankster (2004-01-10 21:04) [3]блин, а как в существующий файл дописать? а то он затирает, пробовал переделать так
OutFS := TFileStream.Create( OutFile, fmOpenReadWrite);
не получилось, он всё равно старый файл затирает
← →
YuRock (2004-01-10 21:10) [4]Наверное, так:
...
InFS.Seek(0, soFromEnd);
...
← →
Prankster (2004-01-14 22:02) [5]не, вот так
InfOut.position:=infout.size;
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2004.01.26;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.05 c