c# - 如何使用 zlib.NET 扩充文件?

标签 c# .net compression zlib

我正在使用 zlib.NET库来尝试膨胀由 zlib 压缩的文件(也许在 Linux 机器上)。这是我正在做的:

zlib.ZInputStream zinput =
    new zlib.ZInputStream(File.Open(path, FileMode.Open, FileAccess.Read));

while (stopByte != (data = zinput.ReadByte()))
{
  // check data here
}

zinput.Close();

数据字节与压缩数据字节匹配,所以我一定是做错了什么。

最佳答案

除了即使在遇到异常时也无法使用“using”语句来关闭流之外,这对我来说还可以。数据肯定是压缩过的吗?你能在 linux box 上用 zlib 解压吗?

查看源代码后,它非常可怕 - 调用 int Read(buffer, offset, length) 将最终调用其内部 int Read()例如方法 length 次。考虑到这种不稳定的开始,我不确定我是否会特别信任代码,但我希望它至少能稍微工作!您是否尝试过使用 SharpZipLib

关于c# - 如何使用 zlib.NET 扩充文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/185690/

相关文章:

c# - 为什么这个 Explicit P/Invoke 不起作用?

.net - 如何使用 Mono.Cecil 更改类型的访问器

version-control - 在提交到存储库之前解压缩压缩的数据文件

c# - 如何计算反向模量

c# - Exchange Server 不支持请求的版本

c# - 将数据存储在内存中,哪种方法好?

javascript - 使网站加载更快

compression - 如何使用 zlib.h 库将 .zip 文件解压到文件夹中?

c# - 如何将变量(别名)传递给where条件SQL

c# - 如何在 UML 中表示 C# 属性?