{"id":452,"date":"2004-02-13T14:01:59","date_gmt":"2004-02-13T05:01:59","guid":{"rendered":"\/?p=452"},"modified":"2004-02-13T14:01:59","modified_gmt":"2004-02-13T05:01:59","slug":"javalangruntime","status":"publish","type":"post","link":"https:\/\/www.hiro345.net\/blogs\/hiro345\/archives\/452.html","title":{"rendered":"java.lang.Runtime"},"content":{"rendered":"<p>\njava.lang.Runtime\u3092\u4f7f\u3048\u3070\u3001Java\u30d7\u30ed\u30b0\u30e9\u30e0\u304b\u3089\u30d7\u30e9\u30c3\u30c8\u30d5\u30a9\u30fc\u30e0\u4f9d\u5b58\u306e\u30b3\u30de\u30f3\u30c9\u3092\u5b9f\u884c\u3059\u308b\u3053\u3068\u304c\u3067\u304d\u308b\u3002\u3053\u306e\u5916\u90e8\u30b3\u30de\u30f3\u30c9\u306e\u547c\u3073\u51fa\u3057\u306b\u306f\u82e5\u5e72\u6c17\u3092\u3064\u3051\u306a\u3044\u3068\u3044\u3051\u306a\u3044\u3053\u3068\u304c\u3042\u308b\u3002\u8a73\u7d30\u306f<a href=\"http:\/\/www.gimlay.org\/~javafaq\/S103.html\">JavaFAQ S103: \u5916\u90e8\u30b3\u30de\u30f3\u30c9\u547c\u51fa\u3057<\/a>\u3092\u53c2\u7167\u3059\u308b\u3068\u826f\u3044\u3060\u308d\u3046\u3002\n<\/p>\n<p>\n\u53c2\u8003\u30d7\u30ed\u30b0\u30e9\u30e0\u3092\u66f8\u3044\u3066\u307f\u305f\u306e\u3067\u3001\u8208\u5473\u306e\u3042\u308b\u65b9\u306f\u3069\u3046\u305e\u3002\n<\/p>\n<p><!--more--><\/p>\n<div class=\"code\">\n\/*<br \/>\n *<br \/>\n * \u4f5c\u6210\u65e5: 2004\/02\/13<br \/>\n * ex.<br \/>\n *  java org.sssg.four.java.runtime.Starter command.com \/c dir<br \/>\n *  java org.sssg.four.java.runtime.Starter<br \/>\n *\/<br \/>\npackage org.sssg.four.java.runtime;<\/p>\n<p>import java.io.BufferedReader;<br \/>\nimport java.io.IOException;<br \/>\nimport java.io.InputStream;<br \/>\nimport java.io.InputStreamReader;<\/p>\n<p>public class Starter {<br \/>\n\tclass Reader implements Runnable {<br \/>\n\t\tprivate InputStream is;<br \/>\n\t\tpublic void setInputStream(InputStream is) {<br \/>\n\t\t\tthis.is = is;<br \/>\n\t\t}<br \/>\n\t\tpublic void run() {<br \/>\n\t\t\tif (is == null)<br \/>\n\t\t\t\treturn;<br \/>\n\t\t\tBufferedReader br = new BufferedReader(new InputStreamReader(is));<br \/>\n\t\t\tString line;<br \/>\n\t\t\ttry {<br \/>\n\t\t\t\twhile ((line = br.readLine()) != null) {<br \/>\n\t\t\t\t\tSystem.out.println(line);<br \/>\n\t\t\t\t}<br \/>\n\t\t\t} catch (IOException e) {<br \/>\n\t\t\t} finally {<br \/>\n\t\t\t\tif (br != null) {<br \/>\n\t\t\t\t\ttry {<br \/>\n\t\t\t\t\t\tbr.close();<br \/>\n\t\t\t\t\t} catch (IOException e) {<br \/>\n\t\t\t\t\t}<br \/>\n\t\t\t\t}<br \/>\n\t\t\t}<br \/>\n\t\t}<br \/>\n\t}<br \/>\n\tprivate String[] args;<br \/>\n\tprivate Reader out;<br \/>\n\tprivate Reader err;<br \/>\n\tpublic Starter() {<br \/>\n\t\tString command = &#8220;C:\\apache-ant-1.5.3-1\\bin\\ant.bat&#8221;;<br \/>\n\t\tString fileOption = &#8220;-f&#8221;;<br \/>\n\t\tString fileName = &#8220;build.xml&#8221;;<br \/>\n\t\targs = new String[] { command, fileOption, fileName };<br \/>\n\t}<br \/>\n\tpublic Starter(String[] args) {<br \/>\n\t\tthis.args = args;<br \/>\n\t}<br \/>\n\tpublic void start() {<br \/>\n\t\ttry {<br \/>\n\t\t\tProcess process = Runtime.getRuntime().exec(args);<br \/>\n\t\t\tInputStream stdout = process.getInputStream();<br \/>\n\t\t\tInputStream stderr = process.getErrorStream();<br \/>\n\t\t\tout = new Reader();<br \/>\n\t\t\tout.setInputStream(stdout);<br \/>\n\t\t\terr = new Reader();<br \/>\n\t\t\terr.setInputStream(stderr);<br \/>\n\t\t} catch (IOException e) {<br \/>\n\t\t}<br \/>\n\t\tThread outThread = new Thread(out);<br \/>\n\t\tThread errThread = new Thread(err);<br \/>\n\t\toutThread.start();<br \/>\n\t\terrThread.start();<br \/>\n\t}<br \/>\n\tpublic static void main(String[] args) {<br \/>\n\t\tStarter starter = new Starter();<br \/>\n\t\tstarter.start();<br \/>\n\t}<br \/>\n}\n<\/p><\/div>\n","protected":false},"excerpt":{"rendered":"<p>java.lang.Runtime\u3092\u4f7f\u3048\u3070\u3001Java\u30d7\u30ed\u30b0\u30e9\u30e0\u304b\u3089\u30d7\u30e9\u30c3\u30c8\u30d5\u30a9\u30fc\u30e0\u4f9d\u5b58\u306e\u30b3\u30de\u30f3\u30c9\u3092\u5b9f\u884c\u3059\u308b\u3053\u3068\u304c\u3067\u304d\u308b\u3002\u3053\u306e\u5916\u90e8\u30b3\u30de\u30f3\u30c9\u306e\u547c\u3073\u51fa\u3057\u306b\u306f\u82e5\u5e72\u6c17\u3092\u3064\u3051\u306a\u3044\u3068\u3044\u3051\u306a\u3044\u3053\u3068\u304c\u3042\u308b\u3002\u8a73\u7d30\u306fJavaFAQ S103: &hellip; <a href=\"https:\/\/www.hiro345.net\/blogs\/hiro345\/archives\/452.html\">\u7d9a\u304d\u3092\u8aad\u3080 <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[2],"tags":[],"class_list":["post-452","post","type-post","status-publish","format-standard","hentry","category-java"],"_links":{"self":[{"href":"https:\/\/www.hiro345.net\/blogs\/hiro345\/wp-json\/wp\/v2\/posts\/452","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.hiro345.net\/blogs\/hiro345\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.hiro345.net\/blogs\/hiro345\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.hiro345.net\/blogs\/hiro345\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/www.hiro345.net\/blogs\/hiro345\/wp-json\/wp\/v2\/comments?post=452"}],"version-history":[{"count":0,"href":"https:\/\/www.hiro345.net\/blogs\/hiro345\/wp-json\/wp\/v2\/posts\/452\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.hiro345.net\/blogs\/hiro345\/wp-json\/wp\/v2\/media?parent=452"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.hiro345.net\/blogs\/hiro345\/wp-json\/wp\/v2\/categories?post=452"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.hiro345.net\/blogs\/hiro345\/wp-json\/wp\/v2\/tags?post=452"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}