如何在不解压缩的情况下将文件从 zipArchive 复制到另一个 zipArchive - 在 C# 中
How to copy file from zipArchive into another zipArchive without unzipping - in c#
我想在不解压缩 zipArchive1
的情况下将 zipArchive1
中的条目添加到 zipArchive2
。
using (var zipArchive1 = ZipFile.Open(zipFile1, ZipArchiveMode.Read))
{
using (var zipArchive2 = ZipFile.Open(zipFile2, ZipArchiveMode.Update))
{
var entry = zipArchive1.GetEntry("fileName");
// I want to do something like
// zipArchive2.Add(entry)
}
}
这里是:
using (ZipArchive sourceArchive = ZipFile.OpenRead(sourceZip))
{
var entry = sourceArchive.GetEntry(fileFromSource);
using (ZipArchive destArchive = ZipFile.Open(destZip, ZipArchiveMode.Update))
{
using (var existinFileStream = entry.Open())
{
var newFile = destArchive.CreateEntry(entry.FullName);
using (var newFileStream = newFile.Open())
{
existinFileStream.CopyTo(newFileStream);
}
}
}
}
其中 sourceZip
和 destZip
是您的 zip 文件的路径,fileFromSource
是源存档中文件的名称。
我想在不解压缩 zipArchive1
的情况下将 zipArchive1
中的条目添加到 zipArchive2
。
using (var zipArchive1 = ZipFile.Open(zipFile1, ZipArchiveMode.Read))
{
using (var zipArchive2 = ZipFile.Open(zipFile2, ZipArchiveMode.Update))
{
var entry = zipArchive1.GetEntry("fileName");
// I want to do something like
// zipArchive2.Add(entry)
}
}
这里是:
using (ZipArchive sourceArchive = ZipFile.OpenRead(sourceZip))
{
var entry = sourceArchive.GetEntry(fileFromSource);
using (ZipArchive destArchive = ZipFile.Open(destZip, ZipArchiveMode.Update))
{
using (var existinFileStream = entry.Open())
{
var newFile = destArchive.CreateEntry(entry.FullName);
using (var newFileStream = newFile.Open())
{
existinFileStream.CopyTo(newFileStream);
}
}
}
}
其中 sourceZip
和 destZip
是您的 zip 文件的路径,fileFromSource
是源存档中文件的名称。