![]() |
|
|
|||||||
| Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
|
Опции темы | Поиск в этой теме | Опции просмотра |
|
#1
|
||||
|
||||
|
в общем есть 2 файла. нужно сделать третий, НО с таким содержанием:
первый_файл+любая_строка+второй_файл. файлы бинарные. пробовал и через TFileStream, и через FIleOpen/FileRead/FileWrite/FileSeek... не получалось. в основном строка не записывалась. кто что подскажет? |
|
#2
|
||||
|
||||
|
если файлы текстовые то попробуй что-то вроде этого:
Код:
procedure TForm1.Button1Click(Sender: TObject);
var
S1, S2: TStringList;
begin
S1:= TStringList.Create;
S2:= TStringList.Create;
S1.LoadFromFile('C:\File1.txt');
S2.AddStrings(S1);
S2.Add('some string');
S1.LoadFromFile('C:\File2.txt');
S2.AddStrings(S1);
S1.Free;
S2.SaveToFile('TargetFile.txt');
S2.Free;
end; |
|
#3
|
||||
|
||||
|
ryderx34, читать умеешь? файлы бинарные.
Nekito[S], приложи код с FileStream, который у тебя не получался - допилим. |
|
#4
|
||||
|
||||
|
Цитата:
|
|
#5
|
||||
|
||||
|
Код:
var
filestream1: TFileStream;
filestream2: TFileStream;
filestreamout: TFileStream;
stringstream: TStringStream;
begin
filestream1:=TFileStream.Create('c:\windows\notepad.exe', fmOpenRead);
filestream2:=TFileStream.Create('c:\windows\regedit.exe', fmOpenRead);
filestreamout:=TFileStream.Create('c:\downloads\multifile.dat', fmCreate);
stringstream:=TStringStream.Create('--delim--'#13#10);
filestreamout.CopyFrom(filestream1, filestream1.Size);
filestreamout.CopyFrom(stringstream, stringstream.Size);
filestreamout.CopyFrom(filestream2, filestream2.Size);
filestream1.Free;
filestream2.Free;
filestreamout.Free;
stringstream.Free;
end; |