11

如何调用打印到标准输出的常规方法,将输出附加到字符串?

4

2 回答 2

13

这演示了如何做到这一点。将其粘贴到 Groovy 脚本文件中并运行它。您将看到第一个调用函数正常。第二次调用没有结果。最后,main 中的最后一步打印重定向到 ByteArrayOutputStream 的第二次调用的结果。

玩得开心!

void doSomething() {
  println "i did something"
}

println "normal call\n---------------"
doSomething()
println ""

def buf = new ByteArrayOutputStream()
def newOut = new PrintStream(buf)
def saveOut = System.out

println "redirected call\n---------------"
System.out = newOut
doSomething()
System.out = saveOut
println ""

println "results of call\n---------------"
println buf.toString()
于 2008-09-23T15:34:14.670 回答
1

我不确定“将输出附加到字符串”是什么意思,但您可以使用“print”或“println”打印到标准输出。

于 2008-10-13T19:44:12.803 回答