【IT相关】java中PipedOutputStream和PipedInputStream类用法

PipedOutputStream和PipedInputStream用于在应用程序中创建管道通信

实例:

[java] view plaincopyprint?import java.io.*;

public class PipedStreamTest {

public static void main(String [] args) {

Sender sender = new Sender();

Receiver receiver = new Receiver();

PipedOutputStream utStream = sender.getOutStream();

PipedInputStream inStream = receiver.getInStream();

try {

//inStream.connect(outStream); // 与下一句一样

outStream.connect(inStream);

} catch (Exception e) {

e.printStackTrace();

}

sender.start();

receiver.start();

}

}

class Sender extends Thread {

private PipedOutputStream utStream = new PipedOutputStream();

public PipedOutputStream getOutStream() {

return outStream;

}

public void run() {

String info = “hello, receiver”;

try {

outStream.write(info.getBytes());

outStream.close();

} catch (Exception e) {

e.printStackTrace();

}

}

}

class Receiver extends Thread {

private PipedInputStream inStream = new PipedInputStream();

public PipedInputStream getInStream() {

return inStream;

}

public void run() {

byte[] buf = new byte[1024];

try {

int len = inStream.read(buf);

System.out.println(“receive message from sender : ” + new String(buf, 0, len));

inStream.close();

} catch (Exception e) {

e.printStackTrace();

}

}

}

import java.io.*;

public class PipedStreamTest {

public static void main(String [] args) {

Sender sender = new Sender();

Receiver receiver = new Receiver();

PipedOutputStream utStream = sender.getOutStream();

PipedInputStream inStream = receiver.getInStream();

try {

//inStream.connect(outStream); // 与下一句一样

outStream.connect(inStream);

} catch (Exception e) {

e.printStackTrace();

}

sender.start();

receiver.start();

}

}

class Sender extends Thread {

private PipedOutputStream utStream = new PipedOutputStream();

public PipedOutputStream getOutStream() {

return outStream;

}

public void run() {

String info = “hello, receiver”;

try {

outStream.write(info.getBytes());

outStream.close();

} catch (Exception e) {

e.printStackTrace();

}

}

}

class Receiver extends Thread {

private PipedInputStream inStream = new PipedInputStream();

public PipedInputStream getInStream() {

return inStream;

}

public void run() {

byte[] buf = new byte[1024];

try {

int len = inStream.read(buf);

System.out.println(“receive message from sender : ” + new String(buf, 0, len));

inStream.close();

} catch (Exception e) {

e.printStackTrace();

}

}

}

其他函数请参照jdk文档

更多IT资料请访问:Tore_m_628846_6316_5_1.html”>http://www.shangxueba.com/sTore_m_628846_6316_5_1.html

所有的失败,与失去自己的失败比起来,更是微不足道

【IT相关】java中PipedOutputStream和PipedInputStream类用法

相关文章:

你感兴趣的文章:

标签云: