我想把一个压缩后的输出流转变为输出时解压缩后继续输出。
附件中一个是输入流的改造,可以实现输入时压缩继续输入,但我想改一个输出时解压缩继续输出就不成功了,请帮我改一个。我的邮箱是pqc4391@yeah.net.成功后我给200分,不够还可以加。
以下是调用测试程序段
try{
BufferedInputStream br1 = new BufferedInputStream(engineCompress(new FileInputStream("/soft/pqcjava/pqcnet/1.txt")));
System.out.println("br1 create!");
File fp=new File("/soft/pqcjava/pqctestzip1.txt");
BufferedOutputStream bo1 = new BufferedOutputStream(engineCompress(new FileOutputStream(fp))); //在此被阻塞了
System.out.println("bo1 create!");
int buflen=8192;
byte b1[]=new byte[buflen];
int readlen=0;
while ((readlen = br1.read(b1,0,buflen)) != -1)
{
System.out.println("count1="+readlen);
bo1.write(b1,0,readlen);
System.out.println("write ="+readlen);
// System.out.println("count1="+count1);
}
br1.close();
bo1.close();
}
catch(Exception e)
{
e.printStackTrace();
}
private static OutputStream engineCompress (OutputStream out)
throws IOException {
return new OutputEngineOutputStream
(new IOStreamInputEngine (out, new GZIPInputStreamFactory ()));
}
private static InputStream engineCompress (InputStream in)
throws IOException {
return new OutputEngineInputStream
(new IOStreamEngine (in, new GZIPOutputStreamFactory ()));
}