欢迎访问 生活随笔!

生活随笔

当前位置: 首页 > 编程资源 > 编程问答 >内容正文

编程问答

java inflaterinputstream_java.util.zip.InflaterInputStream.available()方法示例

发布时间:2025/3/20 编程问答 39 豆豆
生活随笔 收集整理的这篇文章主要介绍了 java inflaterinputstream_java.util.zip.InflaterInputStream.available()方法示例 小编觉得挺不错的,现在分享给大家,帮大家做个参考.

java.util.zip.InflaterInputStream.available()方法在达到文件结尾(EOF)后返回0,否则返回1。

声明

以下是java.util.zip.InflaterInputStream.available()方法的声明。

public int available()

throws IOException

返回值

在到达底层输入流结束后返回0,否则始终返回1。

异常

IOException - 如果发生I/O错误或者此流已关闭。

示例

以下示例显示了java.util.zip.InflaterInputStream.available()方法的用法。

package com.yiibai;

import java.io.ByteArrayInputStream;

import java.io.ByteArrayOutputStream;

import java.io.IOException;

import java.util.zip.DataFormatException;

import java.util.zip.Deflater;

import java.util.zip.InflaterInputStream;

public class InflaterInputStreamDemo {

public static void main(String[] args) throws DataFormatException, IOException {

String message = "Welcome to Yiibai.com;"

+"Welcome to Yiibai.com;"

+"Welcome to Yiibai.com;"

+"Welcome to Yiibai.com;"

+"Welcome to Yiibai.com;"

+"Welcome to Yiibai.com;"

+"Welcome to Yiibai.com;"

+"Welcome to Yiibai.com;"

+"Welcome to Yiibai.com;"

+"Welcome to Yiibai.com;";

System.out.println("Original Message length : " + message.length());

byte[] input = message.getBytes("UTF-8");

int length = message.length();

// Compress the bytes

byte[] output = new byte[1024];

Deflater deflater = new Deflater();

deflater.setInput(input);

deflater.finish();

int compressedDataLength = deflater.deflate(output,0 , output.length, Deflater.NO_FLUSH);

System.out.println("Total uncompressed bytes input :" + deflater.getTotalIn());

System.out.println("Compressed Message Checksum :" + deflater.getAdler());

deflater.finished();

System.out.println("Compressed Message length : " + compressedDataLength);

ByteArrayInputStream bin = new ByteArrayInputStream(output);

InflaterInputStream inflaterInputStream = new InflaterInputStream(bin);

byte[] result = new byte[1024];

ByteArrayOutputStream buffer = new ByteArrayOutputStream();

while(inflaterInputStream.available() != 0){

buffer.write(inflaterInputStream.read());

}

inflaterInputStream.close();

// Decode the bytes into a String

String message1 = new String(buffer.toByteArray(),0, length,"UTF-8");

System.out.println(message.equals(message1));

}

}

执行上面示例代码,得到以下结果 -

Original Message length : 300

Total uncompressed bytes input :300

Compressed Message Checksum :368538129

Compressed Message length : 42

true

¥ 我要打赏

纠错/补充

收藏

加QQ群啦,易百教程官方技术学习群

注意:建议每个人选自己的技术方向加群,同一个QQ最多限加 3 个群。

总结

以上是生活随笔为你收集整理的java inflaterinputstream_java.util.zip.InflaterInputStream.available()方法示例的全部内容,希望文章能够帮你解决所遇到的问题。

如果觉得生活随笔网站内容还不错,欢迎将生活随笔推荐给好友。