2012-08-27 16 views
0

如何獲取信息在java中處理,使用Runtime.getRuntime.exec("rundll32 url.dll,FileProtocolHandler "+url),我無法從返回值的輸入流中獲取任何東西。我想用java來處理瀏覽器並從瀏覽器的響應中獲取信息。如何從java中的Process獲取信息?

Process pro = Runtime.getRuntime().exec("rundll32 url.dll,FileProtocolHandler " + url); 
//Process pro = Runtime.getRuntime().exec("C:\\Documents\u0008and\u0008Settings\\peiyin.lyy\\Local\u0008Settings\\Application\u0008Data\\Google\\Chrome\\Application\\chrome.exe" + url); 
reader = new BufferedReader(new InputStreamReader(pro.getInputStream())); 

String line = null; 
Thread.sleep(1000); 
while((line=reader.readLine())!=null){ 
    Thread.sleep(30); 
    System.out.println(line); 
} 
System.out.printl(line); 

行爲空。

+0

您確定您執行的命令是有效的嗎?你可以嘗試測試'process.exitValue()'和/或讀取'process.getErrorStream()' – phsym

回答

0

我試過命令rundll32 url.dll,FileProtocolHandler http://www.google.fr在Windows終端。在屏幕上沒有打印輸出,並且在瀏覽器打開時該命令返回。 由於沒有什麼要從InputStream中讀取,所以如果該行爲空,則是正常的。

你想從瀏覽器獲得什麼樣的信息?