java中可以通過調用ping命令來判斷網絡是否連接正常

jopen 9年前發布 | 2K 次閱讀 Java


import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;

/**

  • 判斷網絡連接狀況.
  • @author nagsh
  • */
    public class NetState {

    public boolean isConnect(){

     boolean connect = false;  
     Runtime runtime = Runtime.getRuntime();  
     Process process;  
     try {  
         process = runtime.exec("ping " + "www.baidu.com");  
         InputStream is = process.getInputStream();   
         InputStreamReader isr = new InputStreamReader(is);   
         BufferedReader br = new BufferedReader(isr);   
         String line = null;   
         StringBuffer sb = new StringBuffer();   
         while ((line = br.readLine()) != null) {   
             sb.append(line);   
         }   
         System.out.println("返回值為:"+sb);    
         is.close();   
         isr.close();   
         br.close();   
    
         if (null != sb && !sb.toString().equals("")) {   
             String logString = "";   
             if (sb.toString().indexOf("TTL") > 0) {   
                 // 網絡暢通    
                 connect = true;  
             } else {   
                 // 網絡不暢通    
                 connect = false;  
             }   
         }   
     } catch (IOException e) {  
         e.printStackTrace();  
     }   
     return connect;  
    

    }

    public static void main(String[] args) {

     NetState netState = new NetState();  
     System.out.println(netState.isConnect());  
    
    

    }

} </pre>

 本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!