package com.jingcheng.io;
import java.io.*;
public class ReadPipeSteam {
public static void main(String[] args) {
PipedInputStream pis = new PipedInputStream();
PipedOutputStream pos = new PipedOutputStream();
try{
pos.connect(pis);
}catch(Exception e){
e.printStackTrace();
}
Producer producer = new Producer(pos);
Consumer con = new Consumer(pis);
producer.run();
con.run();
}
}
class Producer implements Runnable{
PipedOutputStream pos;
public Producer(PipedOutputStream pos){
this.pos = pos;
}
public void run() {
try{
pos.write("Producer generator .".getBytes());
pos.close();
}catch(Exception e){
e.printStackTrace();
}
}
}
class Consumer implements Runnable{
PipedInputStream pis;
public Consumer(PipedInputStream pis){
this.pis = pis;
}
public void run() {
try{
byte[] bytes = new byte[100];
int length = pis.read(bytes);
System.out.println(new String(bytes,0,length));
}catch(Exception e){
e.printStackTrace();
}
}
}