Java IO:PipedInputStream
时间:2020-01-09 10:36:05 来源:igfitidea点击:
通过PipedInputStream类,可以将管道的内容作为字节流读取。管道是同一JVM内的线程之间的通信通道。在有关Java IO管道的教程中对管道进行了更详细的说明。
PipedInputStream示例
这是一个简单的PipedInputStream
示例:
InputStream input = new PipedInputStream(pipedOutputStream); int data = input.read(); while(data != -1) { //do something with data... doSomethingWithData(data); data = input.read(); } input.close();
注意:为清楚起见,此处已跳过适当的异常处理。要了解有关正确的异常处理的更多信息,请转到Java IO异常处理。
PipedInputStream的read()方法返回一个int,其中包含读取的字节的字节值。如果read()
方法返回-1,则说明流中不再有要读取的数据,可以将其关闭。也就是说,-1作为int值,而不是-1作为字节值。这里有区别!
更多PipedInputStream方法
由于PipedInputStream是InputStream的子类,因此PipedInputStream具有与InputStream相同的基本方法和使用模式。有关更多信息,请参见我的" InputStream"教程。
Java IO管道
如我们在上面的示例中看到的,需要将" PipedInputStream"连接到" PipedOutputStream"。当这两个流连接时,它们形成管道。