首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在c#中压缩4 4GB以上的文件时跳过ZIP64格式

如何在c#中压缩4 4GB以上的文件时跳过ZIP64格式
EN

Stack Overflow用户
提问于 2020-08-06 20:53:04
回答 1查看 312关注 0票数 0

在这里,我试图创建压缩文件使用.net 4.5版本,其中有大于4 GB的大小。创建为ZIP64的文件格式。在那之后,还有一个用java编写的程序,它将被解压并处理。但是java代码抛出了类似"invalid entry size“的错误。我们可以跳过ZIP64格式,这样java代码就可以很容易地处理压缩文件了吗?

代码语言:javascript
复制
public static void ZipTest(string infile, string outfile)
{
   using (ZipArchive archive = System.IO.Compression.ZipFile.Open(outfile,                                         
                                                                 ZipArchiveMode.Create))
   {
     archive.CreateEntryFromFile(infile, Path.GetFileName(infile));
   }
}
EN

回答 1

Stack Overflow用户

发布于 2020-08-06 21:06:08

这是不可能的,因为原始.ZIP格式对输入和输出文件有4 Gb的限制。

来自ZIP article on Wikipedia

对于标准ZIP,存档文件和其中的单个文件的最大大小均为4,294,967,295字节(23^21字节,或4 GiB减1字节)。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/63284041

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档