- java.util.zip 包类
- java.util.zip - 主页
- java.util.zip - Adler32
- java.util.zip - CheckedInputStream
- java.util.zip - CheckedOutputStream
- java.util.zip - CRC32
- java.util.zip - Deflater
- java.util.zip - DeflaterInputStream
- java.util.zip - DeflaterOutputStream
- java.util.zip - GZIPInputStream
- java.util.zip - GZIPOutputStream
- java.util.zip - Inflater
- java.util.zip - InflaterInputStream
- java.util.zip - InflaterOutputStream
- java.util.zip - ZipEntry
- java.util.zip - ZipFile
- java.util.zip - ZipInputStream
- java.util.zip - ZipOutputStream
- java.util.zip 包其他信息
- java.util.zip - 异常
- java.util.zip - 错误
- java.util.zip 有用资源
- java.util.zip - 快速指南
- java.util.zip - 有用资源
- java.util.zip - 讨论
java.util.zip.DeflaterOutputStream.flush() 方法示例
描述
java.util.zip.DeflaterOutputStream.flush() 方法刷新压缩输出流。如果在构建此压缩输出流时 syncFlush 为 true,则此方法首先使用刷新模式Deflater.SYNC_FLUSH,让底层压缩器刷新全部待处理的数据以将其强制刷新到输出流,然后刷新输出流。否则,此方法只刷新输出流而不刷新压缩器。
声明
以下是 java.util.zip.DeflaterOutputStream.flush() 方法的声明。
public void flush() throws IOException
异常
IOException − 如果发生 I/O 错误。
示例
以下示例显示了 java.util.zip.DeflaterOutputStream.flush() 方法的用法。
package com.tutorialspoint;
import java.io.ByteArrayInputStream;
import java.io.ByteArrayOutputStream;
import java.io.FileInputStream;
import java.io.IOException;
import java.io.UnsupportedEncodingException;
import java.util.Arrays;
import java.util.zip.Adler32;
import java.util.zip.CheckedInputStream;
import java.util.zip.DataFormatException;
import java.util.zip.Deflater;
import java.util.zip.DeflaterInputStream;
import java.util.zip.DeflaterOutputStream;
import java.util.zip.Inflater;
import java.util.zip.InflaterInputStream;
public class DeflaterOutputStreamDemo {
public static void main(String[] args) throws DataFormatException, IOException {
String message = "Welcome to TutorialsPoint.com;"
+"Welcome to TutorialsPoint.com;"
+"Welcome to TutorialsPoint.com;"
+"Welcome to TutorialsPoint.com;"
+"Welcome to TutorialsPoint.com;"
+"Welcome to TutorialsPoint.com;"
+"Welcome to TutorialsPoint.com;"
+"Welcome to TutorialsPoint.com;"
+"Welcome to TutorialsPoint.com;"
+"Welcome to TutorialsPoint.com;";
String dictionary = "Welcome";
System.out.println("Original Message length : " + message.length());
byte[] input = message.getBytes("UTF-8");
// Compress the bytes
ByteArrayOutputStream arrayOutputStream = new ByteArrayOutputStream();
DeflaterOutputStream outputStream = new DeflaterOutputStream(arrayOutputStream);
outputStream.write(input);
outputStream.flush();
outputStream.close();
//Read and decompress the data
byte[] readBuffer = new byte[5000];
ByteArrayInputStream arrayInputStream =
new ByteArrayInputStream(arrayOutputStream.toByteArray());
InflaterInputStream inputStream = new InflaterInputStream(arrayInputStream);
int read = inputStream.read(readBuffer);
//Should hold the original (reconstructed) data
byte[] result = Arrays.copyOf(readBuffer, read);
// Decode the bytes into a String
message = new String(result, "UTF-8");
System.out.println("UnCompressed Message length : " + message.length());
}
}
让我们编译并运行上述程序,将生成以下结果:−
Original Message length : 300 UnCompressed Message length : 300
javazip_deflateroutputstream.htm
广告