2015-01-06 121 views
0

我的代碼zip文件中創建一個zip文件後一度如下在C#中添加文件到一個文件夾中的zip文件中

ZipArchive zip = ZipFile.Open(destToZip, ZipArchiveMode.Create); 
zip.CreateEntry("pubEd/"); 

string[] fileEntries = Directory.GetFiles(dirToZip); 
foreach (string fileName in fileEntries) 
    zip.CreateEntryFromFile(fileName,Path.GetFileName(fileName), CompressionLevel.Optimal); 

zip.Dispose(); 

在代碼的第二行創建一個文件夾的名稱pubEd在zip文件中。

在下一行我將文件添加到zip文件夾。

發生了什麼是文件被直接添加到壓縮文件。

我想將這些文件添加到我在zip中創建的目錄中。

我該怎麼做?

+0

也許退房http://www.icsharpcode.net/OpenSource/SharpZipLib/ – gmlacrosse

+0

也可以嘗試用'using(){}'包裝你的ZipArchive Zip ='代碼,這樣你就不必直接調用'Dispose()'方法 [ZipFileExtensions.CreateEntryFromFile MSDN](http://msdn.microsoft.com/zh-cn/library/hh485720%28v=vs.110%29.aspx) – MethodMan

回答

2

從外觀上看,你會將Path.GetFileName(fileName)更改爲"pubEd/" + Path.GetFileName(fileName)。並擺脫第二線。這只是基於我對文檔的閱讀。我沒有真正嘗試過。

相關問題