Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/400.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 8 zipfile>4 GB。ZipException:无效的CEN标头(签名错误)_Java_Zip - Fatal编程技术网

Java 8 zipfile>4 GB。ZipException:无效的CEN标头(签名错误)

Java 8 zipfile>4 GB。ZipException:无效的CEN标头(签名错误),java,zip,Java,Zip,我在大于4 GB的zipfile上使用java 1.8.060时出现此错误 我发现这应该可以通过zip64实现 ZipFile zipFile = new ZipFile(zippedFile); 错误: java.util.zip.ZipException: invalid CEN header (bad signature) at java.util.zip.ZipFile.open(Native Method) at java.util.zip.ZipFile.<i

我在大于4 GB的zipfile上使用java 1.8.060时出现此错误

我发现这应该可以通过zip64实现

ZipFile zipFile = new ZipFile(zippedFile);
错误:

java.util.zip.ZipException: invalid CEN header (bad signature)
    at java.util.zip.ZipFile.open(Native Method)
    at java.util.zip.ZipFile.<init>(ZipFile.java:219)
我是否应该以另一种方式获取条目以使用zip64?

我会这样做:

FileInputStream fInput = new FileInputStream(zipFileName);
ZipInputStream zipInput = new ZipInputStream(fInput);
ZipEntry entry = zipInput.getNextEntry();

while(entry != null){
  String entryName = entry.getName();
  File file = new File(destinationFolder + File.separator + entryName);

  // Do whatever you need with the file here
}
大型文件的跨主题:

我想这样做:

FileInputStream fInput = new FileInputStream(zipFileName);
ZipInputStream zipInput = new ZipInputStream(fInput);
ZipEntry entry = zipInput.getNextEntry();

while(entry != null){
  String entryName = entry.getName();
  File file = new File(destinationFolder + File.separator + entryName);

  // Do whatever you need with the file here
}

大型文件的跨主题:

您可以尝试一个-可能会很有趣。如果生成的zip文件格式与您的一样不正确,则最有可能的原因是您没有关闭该文件。@OldCurmudgeon:zip文件不正确valid@JoopEggen:使用java zip文件系统时,zip>4 GB时出现相同错误。您可以尝试a-将很有趣。如果生成的zip文件的格式与您的一样不正确,最可能的原因是您没有关闭该文件。@OldCurmudgeon:zip文件不正确valid@JoopEggen:使用java zip文件系统时,zip>4 GB时出现相同的错误此操作没有错误。谢谢我投了赞成票,但我没有足够的声誉,显然还没有看到它。我进一步尝试了它,发现了一些性能问题。我只是有兴趣买拉链。有了新的ZipFilefile,我马上就能得到它们。流给我的印象是,它加载整个文件以获取条目。你知道如何继续吗?或者我应该打开一个新线程吗?所以你不想读取条目中的内容,而只是一个压缩文件列表?对,首先我必须知道条目的名称,然后再对其进行处理。之后,我用一些条目生成一个流,并将它们传递到数据库。这样做没有错误。谢谢我投了赞成票,但我没有足够的声誉,显然还没有看到它。我进一步尝试了它,发现了一些性能问题。我只是有兴趣买拉链。有了新的ZipFilefile,我马上就能得到它们。流给我的印象是,它加载整个文件以获取条目。你知道如何继续吗?或者我应该打开一个新线程吗?所以你不想读取条目中的内容,而只是一个压缩文件列表?对,首先我必须知道条目的名称,然后再对其进行处理。之后,我用一些条目生成一个流,并将它们传递到数据库。