2013-01-24 63 views
1

我的zip文件有兩級目錄結構。 我使用AddDirectoryByName在根上添加了一個新目錄。 是否可以將現有的目錄移動到新創建的目錄中? 我喜歡將zip文件包含3級目錄結構,而無需解壓zip文件。DotNetZip是否可以重建歸檔文件中的目錄

當前檔案:

RootFolder - 
      + TopFolder - 
         + SecondFolder 

更新存檔文件:

RootFolder - 
      + NewFolder - 
         + TopFolder - 
            + SecondFolder 
+0

沒有進入太多的細節。如果您只是避免使用Disk IO,我相信可以使用.net zip將項目解壓縮到「MemoryStream」中,然後將其放回到zip文件中。 –

+0

感謝您的回覆。我想避免提取500MB文件只是爲了加快速度。 – user2008421

回答

2

我想通了。我只需修改所有條目中的FileName。

using (ZipFile oZip = ZipFile.Read(sFileZip)) 
{ 
    for (int iIdx = 0; iIdx < oZip.Entries.Count; iIdx++) 
    { 
      string sTmpFileName = oZip[iIdx].FileName; 
      oZip[iIdx].FileName = "NewFolder/" + sTmpFileName; 
    } 
    oZip.Save(); 
} 
相關問題