您的位置:首页 > 编程语言 > Java开发

Java IO(八):PipedInputStream & PipedOutputStream

2016-08-02 15:20 447 查看
PipedInputStream 可以从管道中读取字节流数据。

InputStream input = new PipedInputStream(pipedOutStream);
int data = input.read();
while(data != -1){
// do something with data
data = input.read();
}
input.close();


PipedInputStream 的 read() 方法返回读取到的包含一个字节内容的 int 变量。如果 read() 方法返回 -1,意味着程序已经读到流末尾,此时流内已经没有多余的数据可供读取了,你可以关闭流了。

Java IO 管道

正如你所看到的样例,一个 PipedInputStream 需要与一个 PipedOutputStream 相关联,当这两种流联系起来时就形成了一条管道。

Java IO 管道为运行在同一个 JVM 中的两个线程提供了通信能力。所以管道也可以作为数据源以及目标媒介。

PipedOutputStream 可以往管道里写入读取字节流数据

OutputStream output = new PipedOutputStream(pipedInputStream);
while(hasMoreData()){
int data = getMoreData();
output.write(data);
}
output.close


PipedOutputStream 的 write() 方法取一个包含了带写入字节的 int 类型变量作为参数写入。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: