日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

java写宽带连接.adsl拨号,并且检测断线自动重新连接,更换ip

發布時間:2023/12/20 编程问答 27 豆豆
生活随笔 收集整理的這篇文章主要介紹了 java写宽带连接.adsl拨号,并且检测断线自动重新连接,更换ip 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
package com.hua;import java.io.BufferedReader; import java.io.IOException; import java.io.InputStream; import java.io.InputStreamReader; import java.util.Scanner;public class ConnectNetWork {/*** 執行CMD命令,并返回String字符串*/public static String executeCmd(String strCmd) throws Exception {Process p = Runtime.getRuntime().exec("cmd /c " + strCmd);StringBuilder sbCmd = new StringBuilder();BufferedReader br = new BufferedReader(new InputStreamReader(p.getInputStream(), "GB2312"));String line;while ((line = br.readLine()) != null) {sbCmd.append(line + "\n");}return sbCmd.toString();}/*** 連接ADSL*/public static boolean connAdsl(String adslTitle, String adslName, String adslPass) throws Exception {System.out.println("正在建立連接.");String adslCmd = "rasdial " + adslTitle + " " + adslName + " " + adslPass;String tempCmd = executeCmd(adslCmd);// 判斷是否連接成功if (tempCmd.indexOf("已連接") > 0) {System.out.println("已成功建立連接.");return true;} else {System.err.println(tempCmd);System.err.println("建立連接失敗");return false;}}/*** 斷開ADSL*/public static boolean cutAdsl(String adslTitle) throws Exception {String cutAdsl = "rasdial " + adslTitle + " /disconnect";String result = executeCmd(cutAdsl);if (result.indexOf("沒有連接") != -1) {System.err.println(adslTitle + "連接不存在!");return false;} else {System.out.println("連接已斷開");return true;}}/*** 測試網絡是否連接*/public static 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) throws InterruptedException,Exception { Scanner sc = new Scanner(System.in);System.out.println("寬帶連接名稱:"); //看你寬帶連接的名稱String name = sc.next();System.out.println("寬帶賬戶:"); String username = sc.next();System.out.println("寬帶密碼:"); String password = sc.next(); String adsl= "寬帶連接";while(true){ boolean connect = isConnect();Thread.sleep(100000);//單位毫秒,我設置的是100秒.自己看情況更改if(!connect){System.out.println("無網絡,正在重新撥號");connAdsl(name,username,password);}}} } ?/*** 自動更換ip* */ ? public void changeIp() throws Exception{Scanner sc = new Scanner(System.in);System.out.println("寬帶連接名稱:"); // 看你寬帶連接的名稱String name = sc.next();System.out.println("寬帶賬戶:");String username = sc.next();System.out.println("寬帶密碼:");String password = sc.next();System.out.println("更換時間(單位毫秒1秒等于1000毫秒):");int wait = sc.nextInt();while(true){connAdsl(name, username, password);Thread.sleep(wait);cutAdsl(name);Thread.sleep(wait);//再連,分配一個新的IPconnAdsl(name, username, password);}}

總結

以上是生活随笔為你收集整理的java写宽带连接.adsl拨号,并且检测断线自动重新连接,更换ip的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。