1

我需要一个流(或其他东西),我可以使用流写入和读取,两者都来自 Java 程序,这里有一些例子:

CustomStream stream = new CustomStream();

BufferedReader reader = new BufferedReader(new InputStreamReader(stream.getInputStream());
PrintWriter pw = new PrintWriter(stream.getOutputStream());

pw.println("Hello");
pw.println("World");

System.out.println(reader.readLine()); //Hello
System.out.println(reader.readLine()); //World

猜猜这是一个相当迟钝的例子,但是除了实现抽象 Stream 类的所有方法之外,有没有办法做到这一点?

4

1 回答 1

3

听起来您正在寻找一个 JavaPipe对象

http://docs.oracle.com/javase/6/docs/api/java/nio/channels/Pipe.html

该界面与您上面的建议接近。请注意,PipedInputStreamandPipedOutputStream类将使管道更易于交互。

对于某些应用程序,CircularBuffer该类可能就足够了,并且可以节省一点打字时间,但它本质上是做同样的事情。

于 2013-04-21T19:33:55.920 回答