【发布时间】:2014-04-08 22:20:08
【问题描述】:
我有大量 .tar.gz 文件,大小约为 5GB。我注意到.NET GZipStream 实际上陷入了无限循环,试图解压它们。
我找到了一些纯 C# 代码,但这些都与我的文件大小有关。与其他海报 (24GB tar.gz Decompress using sharpziplib) 不同,我在 X64 位机器上将应用程序编译为 64 位 .NET 4.5.1 应用程序。
我注意到 .NET 4.5.1 删除了 2GB 限制.. 但在阅读后发现它非常具有误导性,实际上它似乎删除了无法使用超过 2GB 的对象的所有嵌套部分,但是即使使用relevant option turned on
,字节数组等对象的实际可寻址范围仍为 2GB有没有人有任何解决方案或者我在 C# 中遇到了限制?我可以从我的应用程序调用 64 位 7ZIP DLL 或调用 7ZIP .exe 并等待它完成(有点麻烦),但必须有更清洁的方法吗?另外我想要最快的解压,最好是纯 C# 代码中的东西,但我目前认为这在 C# 中是不可能的(由于字节数组的可寻址范围的限制)
【问题讨论】:
标签: c# gzip gzipstream