我在用 c# 编写的Windows Mobile应用程序上使用 SharpZipLib 进行 gzip
我有这个代码
public static bool gzDecompressFile(String inputFilePath, String outputFilePath)
{
if (!File.Exists(inputFilePath))
return false;
if (File.Exists(outputFilePath))
File.Delete(outputFilePath);
FileStream fs = File.OpenRead(inputFilePath);
FileStream fsOut = File.OpenWrite(outputFilePath);
GZipInputStream gzipIn = new GZipInputStream(fs);
// Compress file in 1kb chunks
byte[] chunk = new byte[1024];
int read = 1;
while (read > 0)
{
read = gzipIn.Read(chunk, 0, chunk.Length);
if (read > 0)
{
fsOut.Write(chunk, 0, read);
}
}
fsOut.Close();
fs.Close();
return true;
}
对于 1.6MB --> 7MB 的解压需要 4-5 分钟。
你知道一个更好的紧凑框架吗?