标签:
原文链接 作者: Jakob Jenkov 译者: 李璟(jlee381344197@gmail.com)
PipedInputStream可以从管道中读取字节流数据,代码如下:
01 |
InputStream input = new PipedInputStream(pipedOutputStream); |
02 |
03 |
int data = input.read(); |
04 |
05 |
while (data != - 1 ) { |
06 |
07 |
//do something with data... |
08 |
09 |
doSomethingWithData(data); |
10 |
11 |
data = input.read(); |
12 |
13 |
} |
14 |
15 |
input.close(); |
请注意,为了清晰,这里忽略了必要的异常处理。想了解更多异常处理的信息,请参考Java IO异常处理。
PipedInputStream的read()方法返回读取到的包含一个字节内容的int变量(译者注:0~255)。如果read()方法返回-1,意味着程序已经读到了流的末尾,此时流内已经没有多余的数据可供读取了,你可以关闭流。-1是一个int类型,不是byte类型,这是不一样的。
正如你所看到的例子那样,一个PipedInputStream需要与一个PipedOutputStream相关联,当这两种流联系起来时,就形成了一条管道。要想更多地了解Java IO中的管道,请参考Java IO管道。
原创文章,转载请注明: 转载自并发编程网 – ifeve.com本文链接地址: Java IO: PipedInputStream
标签:
原文地址:http://www.cnblogs.com/dassmeta/p/5323921.html