string zipPath = @"D:\books\"+fileinfo.DccFileName;
string extractPath = @"D:\books";
System.IO.Compression.ZipFile.ExtractToDirectory(zipPath, extractPath);
这是一段简单的代码,完全符合我的要求:从d:\ books中获取一个zip文件并将其解压缩到同一目录中。有什么办法可以读取新创建的文件的文件名(考虑到.zip存档中只有一个文件)。我更喜欢一种不涉及读取目录更改的解决方案,因为在解压缩的同时可能会在其中创建其他文件。
答案 0 :(得分:1)
您可以通过检查存档
来构建路径var intentedPath = string.Empty;
//open archive
using (var archive = ZipFile.OpenRead(zipPath)) {
//since there is only one entry grab the first
var entry = archive.Entries.First();
//the relative path of the entry in the zip archive
var fileName = entry.FullName;
//intended path once extracted would be
intentedPath = Path.Combine(extractPath, fileName);
}