如何在包含子文件夹和文件的独立存储中压缩和解压缩根文件夹
我在 WP7 中使用带有独立存储的 SharpZipLib 来压缩独立存储中的子文件夹时遇到问题。我的文件夹结构就像我在独立存储中有一个 rootFolder ,其中有 subFolder ,其中包含一些文本文件和更多子文件夹(包含 .jpg 和 .png)。我可以选择 Dotnetzip,但我不确定它是否适用于 WP7 以及它的用法。
我可以通过递归遍历根文件夹来获取列表中的所有文件路径。目前,我可以压缩多个文件,但前提是它们位于单个文件夹中。
无法找到使用正确的文件夹层次结构和文件结构来压缩子文件夹并将其保存在独立存储中的方法。还需要使用正确的文件夹和文件结构对其进行解压缩。
I have problems in using SharpZipLib with isolated storage in WP7 to zip subfolders in isolated storage. My folder structure is like I'm having a rootFolder in isolated storage and inside that there is subFolder having some text files and more subfolders (contains .jpg and .png). I could go for Dotnetzip but I'm not sure it is available for WP7 or not and about its usage.
I am able to get all the file pathes in a list by recursively traversing on root folder. At present I am able to zip multiple files but only when they are inside a single folder.
Can't find way to zip subFolder with correct hierarchy of folder and file structure and save it inside isolated storage. Also needs to unzip it with correct folder and file structure.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
您可以使用适用于 Silverlight/Windows Phone 7 的 SharpZipLib 来执行此操作。
以下代码基于 此示例并演示如何压缩根文件夹(包括子文件夹和文件)。
简短概述:
button1_Click
准备一些虚拟文件夹和文件以进行概念验证:一个包含一个文件的文件夹 root 和两个子文件夹,每个文件夹也包含一个文件,然后调用CreateZip
压缩从 root 开始的整个目录树CreateZip
准备 zip 文件并通过调用开始递归文件夹压缩压缩文件夹
CompressFolder
将给定目录中的所有文件添加到 zip 文件中,并递归到子目录中代码:
You can do this with SharpZipLib for Silverlight/Windows Phone 7.
The following code is based on this example and demonstrates how to zip a root folder including subfolders and files.
Short overview:
button1_Click
prepares some dummy folders and files for proof of concept: a folder root containing a file and two subfolders each also containing a file, then it callsCreateZip
to compress the whole directory tree starting with rootCreateZip
prepares the zip file and starts recursive folder compression by callingCompressFolder
CompressFolder
adds all files in a given dir to the zip file and recurses into subdirectoriesThe code: