我需要一个流(或其他东西)我可以使用流来编写和读取,这些都来自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类实现所有方法?
答案 0 :(得分:3)
听起来您正在寻找Java Pipe
对象
http://docs.oracle.com/javase/6/docs/api/java/nio/channels/Pipe.html
界面接近您的建议。请注意,PipedInputStream
和PipedOutputStream
类将使管道更易于与之交互。
对于某些应用程序,CircularBuffer
类可能足够并节省一点点打字,但它基本上做同样的事情。