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

Java基础之管道流对象 PipedInputStream / PipedOutputStream

2013-02-04 10:55 387 查看
管道流 PipedInputStream / PiedOutputStream

说明:输入输出可以直接进行连接,通过结合线程使用。

import java.io.*;

class PipedStreamDemo

{

public static void main(String[] args) throws Exception

{

PipedInputStream in = new PipedInputStream();

PipedOutputStream out = new PipedOutputStream();

in.connect(out);

new Thread(new Reader(in)).start();

new Thread(new Writer(out)).start();

}

}

class Reader implements Runnable

{

private PipedInputStream in;

public Reader(PipedInputStream in)

{

this.in = in;

}

public void run()

{

try

{

byte[] buffer = new byte[1024];

int length = 0;

System.out.println("等待读取数据...");

while((length=in.read(buffer))!=-1)

{

System.out.println(new String(buffer,0,length));

}

in.close();

}

catch(Exception e)

{

throw new RuntimeException(e.getMessage());

}

}

}

class Writer implements Runnable

{

private PipedOutputStream out;

public Writer(PipedOutputStream out)

{

this.out = out;

}

public void run()

{

try

{

System.out.println("六秒后开始写入数据...");

Thread.sleep(6000);

out.write("hello PipedStream here.".getBytes());

out.close();

}

catch(Exception e)

{

throw new RuntimeException(e.getMessage());

}

}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐