从输出流写入输出流
Write from output stream to output stream
我有一个输出流,客户端 A 正在向其写入,我需要将其以字节块的形式转发给客户端 B。
我想将客户端A的输出流与客户端B的输出流连接起来,可以吗?有什么方法可以做到这一点?
我不需要 fork/clone 我更需要从流 A 中获取一些数据并将其移动到流 B(即数据不留在流 A 中)
注意:A和B是进程,客户端A的outputstream不能直接提供给客户端B。
Constraint:Limited记忆
试试这个方法;它在不使用 InputStream 的情况下将写入 'out' 的字节 ("Hello world") 传输到 'out2':
import java.io.ByteArrayOutputStream;
public class OutputStreamEx {
public static void main(String[] args) {
String content = "Hello world";
byte[] bytes = content.getBytes();
try {
ByteArrayOutputStream out = new ByteArrayOutputStream();
out.write(bytes, 0, bytes.length);
ByteArrayOutputStream out2 = new ByteArrayOutputStream();
out.writeTo(out2);
System.out.println(out2.toString());
} catch (Exception ex) {
ex.printStackTrace();
}
}
}
我有一个输出流,客户端 A 正在向其写入,我需要将其以字节块的形式转发给客户端 B。
我想将客户端A的输出流与客户端B的输出流连接起来,可以吗?有什么方法可以做到这一点? 我不需要 fork/clone 我更需要从流 A 中获取一些数据并将其移动到流 B(即数据不留在流 A 中)
注意:A和B是进程,客户端A的outputstream不能直接提供给客户端B。 Constraint:Limited记忆
试试这个方法;它在不使用 InputStream 的情况下将写入 'out' 的字节 ("Hello world") 传输到 'out2':
import java.io.ByteArrayOutputStream;
public class OutputStreamEx {
public static void main(String[] args) {
String content = "Hello world";
byte[] bytes = content.getBytes();
try {
ByteArrayOutputStream out = new ByteArrayOutputStream();
out.write(bytes, 0, bytes.length);
ByteArrayOutputStream out2 = new ByteArrayOutputStream();
out.writeTo(out2);
System.out.println(out2.toString());
} catch (Exception ex) {
ex.printStackTrace();
}
}
}