Tag: zlib

java.io.EOFException:读取文件的ZLIB输入流的意外结束

我写了下面的代码来读取Freebase数据转储,我收到错误java.io.EOFException:ZLIB输入流的意外结束,我不知道应该如何解决这个问题。 你能告诉我问题在哪里吗? GZIPInputStream in = new GZIPInputStream(new FileInputStream(path.freebaseTriples)); String line; Reader decoder = new InputStreamReader(in); BufferedReader br = new BufferedReader(decoder); ParseFreebaseRDF rdfs= new ParseFreebaseRDF(); while ((line = br.readLine()) != null) { rdfs.parser(line); } br.close(); decoder.close(); in.close();

Java中的multithreading解压缩

所以,我试图用Java对zip文件进行只读访问,以multithreading方式解压缩,因为我的标准简单的ZipFile / ZipEntry单线程解决方案使用枚举和输入流而不是什么导致它采取大约五个完整的秒钟,只需要将一个50兆的zipfile解压缩到内存中,这需要一秒钟的AT MOST让我的磁盘无需解压缩即可读取。 然而,整个Java zip库被同步到令人难以置信的令人讨厌的程度,毫无疑问,因为它完全被抽象用于读/写等。 在相同的代码中,而不是具有良好的有效非同步只读代码。 我看过第三方Java库,它们都是大型VFS库,比使用大象枪射击更糟糕,或者它们具有性能优势的唯一原因是它们multithreading到达无论如何,大多数线程都在磁盘IO上阻塞。 我想要做的就是将zipfile拉入byte [],分叉一些线程,然后处理它。 没有任何理由可以以任何方式进行任何同步,因为我在内存中单独使用的每个解压缩文件都没有交互。 为什么一定要这么难?

启用压缩的Tomcat会导致OS X High Sierra出错

我们已经在OS X上使用Tomcat(v7)很长一段时间了,从未遇到过任何问题。 但是,在将操作系统更新到High Sierra之后,当在server.xml中启用压缩时,Web应用程序将不再起作用。 Chrome会不断显示ERR_CONTENT_DECODING_FAILED(显然没有任何内容显示)。 当压缩关闭时,一切正常。 我认为问题的根源是Apple在High Sierra中升级zlib。 塞拉利昂的一切都运转良好。 Tomcat日志文件看起来完美无瑕 – 没有提到任何错误。 有没有人遇到相同的问题并设法解决它或知道一个可行的解决方法而不禁用压缩 ? 此外,如果有人可以确认较新版本的Tomcat在High Sierra上没有遇到此问题,也会有所帮助。 谢谢你的帮助。

Zlib压缩在Java中使用Deflate和Inflate类

我想尝试在java.util.zip中使用Deflate和Inflate类来进行zlib压缩。 我能够使用Deflate压缩代码,但在解压缩时,我遇到了这个错误 – Exception in thread “main” java.util.zip.DataFormatException: unknown compression method at java.util.zip.Inflater.inflateBytes(Native Method) at java.util.zip.Inflater.inflate(Inflater.java:238) at java.util.zip.Inflater.inflate(Inflater.java:256) at zlibCompression.main(zlibCompression.java:53) 这是我目前的代码 – import java.util.zip.*; import java.io.*; public class zlibCompression { /** * @param args */ public static void main(String[] args) throws IOException, DataFormatException { // TODO Auto-generated method stub String fname = “book1”; FileReader infile […]

在处理给定的数据集时,如何为zlib’setDictionary’找到一个好的/最佳的字典?

我有一组(巨大的)类似的数据文件。 该集合不断增长。 单个文件的大小约为10K。 每个文件都必须自己压缩。 压缩是使用zlib库完成的,该库由java.util.zip.Deflater类使用。 使用setDictionary将字典传递给Deflate算法时,我可以提高压缩率。 有没有办法(算法)找到’最佳’字典,即具有整体最佳压缩比的字典? 请参阅zlib手册