如何将groovy方法中的stdout传送到字符串中
时间:2020-03-06 14:36:17 来源:igfitidea点击:
如何调用打印到stdout的常规方法,将输出添加到字符串?
解决方案
这演示了如何执行此操作。将其粘贴到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()
我不确定"将输出添加到字符串"是什么意思,但是可以使用" print"或者" println"将其打印为标准输出。