3 回答
TA贡献1799条经验 获得超8个赞
如何将多个文件归档到一个 ZIP 文件中?
CreateFromDirectory方法将创建带有第二个destinationArchiveFileName 参数的zip 文件。所以你不需要提前创建 zip 文件。您可以使用以下代码直接压缩您的文件夹。
if (ZipFolder != null)
{
// Application now has read/write access to all contents in the picked folder (including other sub-folder contents)
StorageApplicationPermissions.FutureAccessList.AddOrReplace("PickedFolderToken", ZipFolder);
await Task.Run(() =>
{
try
{
ZipFile.CreateFromDirectory(ApplicationData.Current.LocalFolder.Path, $"{ZipFolder.Path}\\{Guid.NewGuid()}.zip");
Debug.WriteLine("folder zipped");
}
catch (Exception w)
{
Debug.WriteLine(w);
}
});
}
TA贡献1794条经验 获得超8个赞
使用此方法,您可以从源目录开始创建 ZIP 文件。这里有一些微软的文档:ZIPFile.CreateFromDirectory
你可以在这个命名空间中找到提到的类和方法:System.IO.Compression
TA贡献1828条经验 获得超3个赞
如果创建临时文件夹来存档整个文件夹是您的解决方案,请尝试以下操作:
using System.IO.Compression;
var files = System.IO.Directory.EnumerateFiles(string PATH, ".jpeg", System.IO.SearchOption.AllDirectories)
foreach (var file in files)
{
File.Copy(file, tempPath + @"\" + System.IO.Path.GetFileName(file));
}
ZipFile.CreateFromDirectory(tempPath, zipPath, CompressionLevel.Fastest, true);
Directory.Delete(tempPath, true); //delete tempfolder after compress commplete
- 3 回答
- 0 关注
- 201 浏览
添加回答
举报