하는 방법 파이프 stdout 에서 그루브한 방법으로 문자열

StackOverflow https://stackoverflow.com/questions/121665

  •  02-07-2019
  •  | 
  •  

문제

어떻게 하나를 호출합 그루브한 방법을 인쇄하는 표준출력에 추가하여 출력 문자열?

도움이 되었습니까?

해결책

이것은 당신이 이것을 할 수있는 방법을 보여줍니다. 이것을 그루비 스크립트 파일에 붙여 넣고 실행하십시오. 첫 번째 통화 기능이 정상으로 표시됩니다. 두 번째 호출은 결과가 없습니다. 마지막으로, 메인의 마지막 단계는 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()

다른 팁

나는 당신이 무슨 뜻인지여"추가하여 출력 문자열",하지만 당신을 인쇄할 수 있습을 표준을 사용하여"인쇄"또는"println".

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top