在java中将StreamWriter转换为OutputStream?
我正在尝试使用System.setOut将System.out重定向到字符串中,这需要PrintStream。有没有办法将StringWriter转换为Stream,以便我可以将其传递给setOut?
我正在尝试使用System.setOut将System.out重定向到字符串中,这需要PrintStream。有没有办法将StringWriter转换为Stream,以便我可以将其传递给setOut?
你不能完全这样做,因为 是 一个 ,而不是一个 .但你可以这样做:StringWriter
Writer
Stream
// create a ByteArray stream, which will be wrapped by a PrintStream
ByteArrayOutputStream baos = new ByteArrayOutputStream();
PrintStream ps = new PrintStream(baos);
System.setOut(ps);
// print whatever you got
String result = baos.toString();