gpt4 book ai didi

file - 如何将两个文件合并为一个?

转载 作者:行者123 更新时间:2023-12-03 15:41:04 25 4
gpt4 key购买 nike

我有两个二进制文件(假设这是一个之前被分成两部分的 ZIP 文件)。如何将它们合并到一个文件中?更准确地说,将第二个文件添加到第一个文件中。

更新:伙计们,感谢所有回复我的人,但这并不完全是我所需要的。基本上,我需要一个类似于 shell 命令的命令:“copy/b file.000+file.001+file.002 file.bin”

最佳答案

像这样:

var
InStream, OutStream: TFileStream;
....
OutStream := TFileStream.Create(OutFileName, fmCreate);
try
InStream := TFileStream.Create(InFileName1, fmOpenRead);
try
OutStream.CopyFrom(InStream, InStream.Size);
finally
InStream.Free;
end;
InStream := TFileStream.Create(InFileName2, fmOpenRead);
try
OutStream.CopyFrom(InStream, InStream.Size);
finally
InStream.Free;
end;
finally
OutStream.Free;
end;

或者更一般地连接多个文件:

procedure ConcatenateFiles(const InFileNames: array of string;
const OutFileName: string);
var
i: Integer;
InStream, OutStream: TFileStream;
begin
OutStream := TFileStream.Create(OutFileName, fmCreate);
try
for i := 0 to high(InFileNames) do
begin
InStream := TFileStream.Create(InFileNames[i], fmOpenRead);
try
OutStream.CopyFrom(InStream, InStream.Size);
finally
InStream.Free;
end;
end;
finally
OutStream.Free;
end;
end;

这样调用它:

ConcatenateFiles(['Part1', 'Part2'], 'Outfile.zip')

关于file - 如何将两个文件合并为一个?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16155038/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com