I'm创建PDA应用程序,我需要上传/下载大量小文件和我的想法是他们聚集在一个未压缩zip文件 。
现在的问题是:It'sa好主意来读取压缩这些文件 ,而不将它们分开? 我该怎么办呢? 还是更解压呢? 由于该文件不压缩我的头脑简单点,也许从zip it's或多或少高效阅读他们直接从文件系统中读取他们...
感谢您的时间!
I'm创建PDA应用程序,我需要上传/下载大量小文件和我的想法是他们聚集在一个未压缩zip文件 。
现在的问题是:It'sa好主意来读取压缩这些文件 ,而不将它们分开? 我该怎么办呢? 还是更解压呢? 由于该文件不压缩我的头脑简单点,也许从zip it's或多或少高效阅读他们直接从文件系统中读取他们...
感谢您的时间!
因为有两个不同的开源库( SharpZipLib和DotNetZip库 )来处理从一个zip文件写入及解压文件,为什么要担心自己做呢?
EWWW - 不要使用J#。
的DotNetZip库,V1.7的,运行在.NET Framework精简2.0及以上。 它可以处理读或ZIP压缩文件内以书面形式压缩或解压缩文件。 源分配包括CF示例应用程序。 这真的很简单。
听起来好像你要使用的存档组文件。
从一个读取文件来看,它使得差异很小,如果文件的处理的一种方式或其他。 您需要实现读取压缩文件的能力,虽然。 即使你使用一个lib像詹姆斯·柯伦认为,这意味着额外的工作,这可能意味着错误的其他来源。
从文件的角度来看上传 ,更有意义:上传者可以收集所需的所有文件,将不得不采取只有一个单次上传的照顾。 这减少了开销以及错误处理(如果uplaod失败了,你有没有删除该组已经上传的所有文件?)。
至于从存档读取它们对直接从光盘读取它们的效率:区别应该不大。 您(或您的邮递库)需要一次解析压缩的目录结构,这是非常简单的。 剩下的就是读取文件的一部分到内存与读取文件到内存中。