का उपयोग कर बीएटी फ़ाइल से आउटपुट प्राप्त करें मैं एक .bat फ़ाइल चलाने और आउटपुट प्राप्त करने का प्रयास कर रहा हूं। मैं इसे चला सकते हैं, लेकिन मैं परिणाम जावा में नहीं मिल सकता है:जावा
String cmd = "cmd /c start C:\\workspace\\temp.bat";
Runtime r = Runtime.getRuntime();
Process pr = r.exec(cmd);
BufferedReader stdInput = new BufferedReader(
new InputStreamReader(pr.getInputStream()));
String s ;
while ((s = stdInput.readLine()) != null) {
System.out.println(s);
}
परिणाम null
है। कोई विचार नहीं कि मुझे यह क्यों मिलता है। ध्यान दें कि मैं विंडोज 7 का उपयोग कर रहा हूं।
पढ़ें (और लागू) * सभी * की सिफारिशों [जब Runtime.exec() नहीं होगा] (http://www.javaworld.com/jw-12-2000/jw-1229-traps.html) । इससे समस्या हल हो सकती है। यदि नहीं, तो इसे विफल होने के कारण इसे और जानकारी प्रदान करनी चाहिए। फिर अनदेखा करें कि यह 'exec' को संदर्भित करता है और' ProcessBuilder' का उपयोग करके 'प्रक्रिया' का निर्माण करता है। तर्कों के लिए खाते में 'स्ट्रिंग [] args' में' स्ट्रिंग तर्क 'को भी तोड़ दें जिसमें स्वयं रिक्त स्थान हों। –