我正在尝试做的是使用Ionic Zip库(c#)将文件夹和文件列表全部添加到我的Zip文件的根目录中.
这是我到目前为止所拥有的
string k = "B:/My Documents/Workspace";
private void button1_Click(object sender, EventArgs e)
{
using (ZipFile zip = new ZipFile())
{
//add directory, give it a name
zip.AddDirectory(k);
zip.Save("t.zip");
}
}
Run Code Online (Sandbox Code Playgroud)
现在,我希望我的拉链看起来像这样.
但它看起来像这样.
任何帮助将不胜感激,谢谢.
AddDirectory的默认行为应该将目录的内容添加到zipfile中的根路径,而不创建子目录.
AddDirectory有第二个重载,它添加一个参数来指定添加文件的路径应该在zipfile中.但是,由于您希望文件进入根目录,因此这只是一个空字符串.
zip.AddDirectory(k, "");
Run Code Online (Sandbox Code Playgroud)
有关详细信息,请参阅此文档.
这些都不能解释子文件夹的来源.我怀疑问题来自代码中的其他内容.在调试中运行它并在调用AddDirectory时查看"k"等于或者打印zip.Entries集合中的所有"条目"可能很有用.