尝试 gunzip 文件时出现随机 "Unexpected end of Zlib input stream" 异常
Random "Unexpected end of Zlib input stream" exception when trying to gunzip files
我有一个 class 可以将给定的 tar.gz 文件提取到一个简单的 .tar 文件中。
但对于某些文件会抛出此异常:
java.io.EOFException: Unexpected end of ZLIB input stream
管理提取的方法如下所示:
GZIPInputStream gzipInputStream;
FileOutputStream fileOutputStream;
byte data[] = new byte[BUFFER];
gzipInputStream = new GZIPInputStream( baseInputStream );
fileOutputStream = new FileOutputStream( destinationFile );
while ( ( count = gzipInputStream.read( data, 0, BUFFER ) ) != -1 )
{
fileOutputStream.write( data, 0, count );
}
fileOutputStream.flush();
fileOutputStream.close();
gzipInputStream.close();
奇怪的是有些文件会抛出异常,有时又不会,但我想不通为什么...:(
我是不是漏掉了什么?
非常感谢,
错误是由于另一个线程同时访问该文件造成的。
我有一个 class 可以将给定的 tar.gz 文件提取到一个简单的 .tar 文件中。 但对于某些文件会抛出此异常:
java.io.EOFException: Unexpected end of ZLIB input stream
管理提取的方法如下所示:
GZIPInputStream gzipInputStream;
FileOutputStream fileOutputStream;
byte data[] = new byte[BUFFER];
gzipInputStream = new GZIPInputStream( baseInputStream );
fileOutputStream = new FileOutputStream( destinationFile );
while ( ( count = gzipInputStream.read( data, 0, BUFFER ) ) != -1 )
{
fileOutputStream.write( data, 0, count );
}
fileOutputStream.flush();
fileOutputStream.close();
gzipInputStream.close();
奇怪的是有些文件会抛出异常,有时又不会,但我想不通为什么...:(
我是不是漏掉了什么?
非常感谢,
错误是由于另一个线程同时访问该文件造成的。