package com.cnipr.control;
import java.io.IOException;
import java.io.InputStream;
import java.net.HttpURLConnection;
import java.net.MalformedURLException;
import java.net.URL;
import com.sun.xml.internal.messaging.saaj.util.Base64;
/**
* @Description:
* java重启路由器并获取ip地址
* @author sunqp
* @date 2013-7-31 上午11:23:50
* @version V1.0
*/
public class Router {
private static final String USERNAME_PASSWORD = "admin:a";
public Router() {
this.disconnect();
}
//http://192.168.3.1/do_cmd.htm?CMD=SYS_CONF&CCMD=0&nowait=1重启路由器
private void disconnect() {
String urlStr = "http://192.168.3.1/info.htm";
this.runCgi(urlStr, USERNAME_PASSWORD);
}
private void runCgi(String urlStr, String authorizationStr) {
URL xUrl = null;
HttpURLConnection xHuc = null;
try {
xUrl = new URL(urlStr);
if (xUrl != null) {
xHuc = (HttpURLConnection) xUrl.openConnection();
if (xHuc != null) {
if (!"".equals(authorizationStr)) {
xHuc.setRequestProperty("Authorization", "Basic "
+ Base64.encode(USERNAME_PASSWORD
.getBytes()));
}
xHuc.setRequestProperty("Content-Length", "0");
xHuc.setRequestProperty("Content-Type",
"application/x-www-form-urlencoded");
xHuc.connect();
String aa = xHuc.getResponseMessage();
下面这些是用来获取IP地址的
InputStream in=xHuc.getInputStream();
int chint=0;
StringBuffer sb=new StringBuffer();
while((chint=in.read())!=-1){
sb.append((char)chint);
}
String html=sb.toString();
int first=html.indexOf("wanIP=\"");
String content=html.substring(459,471);
System.out.println(content);
}
}
} catch (MalformedURLException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
} finally {
if (xHuc != null) {
xHuc.disconnect();
}
}
}
public static void main(String[] args) {
new Router();
}
}
import java.io.IOException;
import java.io.InputStream;
import java.net.HttpURLConnection;
import java.net.MalformedURLException;
import java.net.URL;
import com.sun.xml.internal.messaging.saaj.util.Base64;
/**
* @Description:
* java重启路由器并获取ip地址
* @author sunqp
* @date 2013-7-31 上午11:23:50
* @version V1.0
*/
public class Router {
private static final String USERNAME_PASSWORD = "admin:a";
public Router() {
this.disconnect();
}
//http://192.168.3.1/do_cmd.htm?CMD=SYS_CONF&CCMD=0&nowait=1重启路由器
private void disconnect() {
String urlStr = "http://192.168.3.1/info.htm";
this.runCgi(urlStr, USERNAME_PASSWORD);
}
private void runCgi(String urlStr, String authorizationStr) {
URL xUrl = null;
HttpURLConnection xHuc = null;
try {
xUrl = new URL(urlStr);
if (xUrl != null) {
xHuc = (HttpURLConnection) xUrl.openConnection();
if (xHuc != null) {
if (!"".equals(authorizationStr)) {
xHuc.setRequestProperty("Authorization", "Basic "
+ Base64.encode(USERNAME_PASSWORD
.getBytes()));
}
xHuc.setRequestProperty("Content-Length", "0");
xHuc.setRequestProperty("Content-Type",
"application/x-www-form-urlencoded");
xHuc.connect();
String aa = xHuc.getResponseMessage();
下面这些是用来获取IP地址的
InputStream in=xHuc.getInputStream();
int chint=0;
StringBuffer sb=new StringBuffer();
while((chint=in.read())!=-1){
sb.append((char)chint);
}
String html=sb.toString();
int first=html.indexOf("wanIP=\"");
String content=html.substring(459,471);
System.out.println(content);
}
}
} catch (MalformedURLException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
} finally {
if (xHuc != null) {
xHuc.disconnect();
}
}
}
public static void main(String[] args) {
new Router();
}
}