Java SequenceInputStream available()方法

java.io.SequenceInputStream.available() 用于返回可从输入流读取的最大字节数。

1 语法

public int available()

2 参数

3 返回值

返回可以从当前基础输入流读取(或跳过)而不会阻塞的字节数的估计值;如果已通过调用其close()方法关闭了该输入流,则返回0。

4 示例 

package com.yiidian;

/**
 * 一点教程网: http://www.yiidian.com
 */
/**
 * java.io.SequenceInputStream.available()方法的例子
 */
import java.io.*;

public class Demo {
    public static void main(String[] args) {

        // create two  new strings with 5 characters each
        String s1 = "Hello";
        String s2 = "World";

        // create 2 input streams
        byte[] b1 = s1.getBytes();
        byte[] b2 = s2.getBytes();
        ByteArrayInputStream is1 = new ByteArrayInputStream(b1);
        ByteArrayInputStream is2 = new ByteArrayInputStream(b2);

        // create a new Sequence Input Stream
        SequenceInputStream sis = new SequenceInputStream(is1, is2);

        try {
            // determine how many bytes are available in the first stream
            System.out.println("" + sis.available());

            // read 10 characters, 5 from each stream
            for (int i = 0; i < 10; i++) {
                char c = (char) sis.read();
                System.out.print("" + c);
            }

            // close the stream
            sis.close();

        } catch (IOException ex) {
            ex.printStackTrace();
        }
    }
}

输出结果为:

5
HelloWorld

热门文章

优秀文章