2014-02-11 27 views
0

如何使用ZipPackage列出zip文件中的目录?我想使用zip文件,就好像它是磁盘上的文件夹结构一样,即当前级别的列表文件和目录,根据需要打开一些文件,然后进入每个文件夹,等等递归。使用ZipPackage在Zip文件中列出目录

如果可能,我想避免外部依赖,并且我仅限于.Net 4.0。

编辑: 为了使问题更具体,假设我想创建下面的结构,即对应于压缩文件的内容:

interface IDirectory 
{ 
    IList<IDirectory> SubDirectories {get; } 
    IList<IFile> Files{get; } 
    string Name {get; } 
    //other methods 
} 

interface IFile 
{ 
    string Name {get; } 
    void UnZip (IStream stream); 
} 
+0

你知道['GetParts()'方法](http://msdn.microsoft.com/en-us/library/system.io.packaging.package.getparts(v = vs.100))。 aspx)[给你的档案中的所有文件和目录](http://stackoverflow.com/questions/507751/extracting-files-from-a-zip-archive-programmatically-using-c-sharp-and-system -io)?或者你的意思是你想要将这些信息绑定到用户界面?如果是后者,你使用什么UI框架,WinForms,WPF,HTML? – CodeCaster

+0

@CodeCaster,我在手册中看到他们,但我不知道如何在我的情况下使用它们... – Grzenio

+0

你是什么意思_not sure_?您想做什么?尝试我的评论中的两个链接了解更多信息。 :) – CodeCaster

回答

0

ZipPackage似乎并没有处理任意压缩档案,所以我想我的问题的答案是:这是不可能的。