PipedInputStream类的available()方法 (PipedInputStream Class available() method)
available() method is available in java.io package.
available()方法在java.io包中可用。
available() method is used to return the number of available bytes left that can be read from this PipedInputStream without blocking.
available()方法用于返回可以从此PipedInputStream读取而不会阻塞的剩余可用字节数。
available() method is a non-static method, it is accessible with the class object only and if we try to access the method with the class name then we will get an error.
available()方法是一种非静态方法,只能通过类对象访问,如果尝试使用类名称访问该方法,则会收到错误消息。
available() method may throw an exception at the time of returning the available bytes left.
在返回剩余的可用字节时, available()方法可能会引发异常。
IOException: This exception may throw when getting any input/output error while performing.
IOException :在执行过程中遇到任何输入/输出错误时,可能引发此异常。
Syntax:
句法:
public int available();
Parameter(s):
参数:
It does not accept any parameter.
它不接受任何参数。
Return value:
返回值:
The return type of the method is int, it returns the number of available bytes that can be read without blocking as it may return 0 when this stream closed by using the close() method.
方法的返回类型为int ,它返回可以读取而不会阻塞的可用字节数,因为当使用close()方法关闭此流时,它可能返回0。
Example:
例:
// Java program to demonstrate the example
// of int available() method
// of PipedInputStream
import java.io.*;
public class AvailableOfPIS {
public static void main(String[] args) throws Exception {
int val = 65;
try {
// Instantiates PipedInputStream and
// PipedOutputStream
PipedInputStream pipe_in = new PipedInputStream();
PipedOutputStream pipe_out = new PipedOutputStream();
// By using connect() method is to connect
// this pipe_in to the given pipe_out
pipe_in.connect(pipe_out);
for (int i = 0; i < 3; ++i) {
// By using write() method is to
// write the val to the stream pipe_out
pipe_out.write(val);
val++;
}
// By using available() method is to return
// the available bytes to be read
int avail_bytes = pipe_in.available();
System.out.println("pipe_in.available(): " + avail_bytes);
for (int i = 0; i < 3; ++i) {
// By using read() method is to
// read the integer and convert it into
// char
char ch = (char) pipe_in.read();
System.out.println("pipe_in.read(): " + ch);
}
// By using close() method is to close
// the stream
pipe_in.close();
pipe_out.close();
} catch (Exception ex) {
System.out.println(ex.toString());
}
}
}
Output
输出量
pipe_in.available(): 3
pipe_in.read(): A
pipe_in.read(): B
pipe_in.read(): C
翻译自: https://www.includehelp.com/java/pipedinputstream-available-method-with-example.aspx