0

我正在创建一个 PDA 应用程序,我需要上传/下载很多小文件,我的想法是将它们收集在一个未压缩的 zip 文件中。

问题是:从 zip 中读取这些文件而不分离它们是个好主意吗?我该怎么做?还是解压更好?由于文件没有被压缩,我的简单想法可能是从 zip 中读取它们,它或多或少与直接从文件系统中读取它们一样有效......

谢谢你的时间!

4

3 回答 3

4

由于有两个不同的开源库(SharpZipLibDotNetZip 库)来处理从 zip 文件中写入和提取文件,为什么还要担心自己做呢?

于 2008-11-05T15:50:45.983 回答
1

ewww - 不要使用 J#。

从v1.7 开始, DotNetZip库在 .NET Compact Framework 2.0 及更高版本上运行。它可以处理在 ZIP 存档中读取或写入压缩或未压缩文件。源代码分发包括一个 CF 示例应用程序。这真的很简单。

于 2009-01-04T04:41:18.220 回答
0

听起来好像您想使用存档对文件进行分组。

阅读文件的角度来看,文件以一种或另一种方式处理几乎没有什么区别。不过,您需要实现读取 zip 文件的功能。即使您使用像 James Curran 建议的库,这也意味着额外的工作,这可能意味着额外的错误来源。

上传文件的角度来看,它更有意义:上传者可以收集所有需要的文件,并且只需要处理一次上传。这减少了开销以及错误处理(如果一个上传失败,您是否必须删除该组已上传的所有文件?)。

至于从存档读取它们与直接从光盘读取它们的效率:差异应该是最小的。您(或您的 zip 库)需要解析一次 zip 目录结构,这非常简单。剩下的是将文件的一部分读入内存与将文件读入内存。

于 2008-11-05T16:08:34.917 回答