Java 프로그램에서 groff
을 실행하고 싶습니다. 입력은 문자열에서옵니다. 실제 명령 행에서는 Linux/Mac에서 ^D
으로 입력을 종료합니다. 그렇다면 Java 프로그램에서이 터미네이터를 보내는 방법은 무엇입니까?EOF를 Java 프로세스로 보내는 방법은 무엇입니까?
String usage +=
".Dd \\[year]\n"+
".Dt test 1\n"+
".Os\n"+
".Sh test\n"+
"^D\n"; // <--- EOF here?
Process groff = Runtime.getRuntime().exec("groff -mandoc -T ascii -");
groff.getOutputStream().write(usage.getBytes());
byte[] buffer = new byte[1024];
groff.getInputStream().read(buffer);
String s = new String(buffer);
System.out.println(s);
또는 다른 생각이 있으십니까?
당신이 http://stackoverflow.com/q/43051640/2674303 도움을 줄 수 있습니까? – gstackoverflow