高手帮忙解答一个java小创意问题,不胜感激~!

ray407 2007-12-10 11:47:04
各位请问:
小弟初学java,参加java创意比赛,题目遇到困难,希望有高人能指点一二, 题目如下:
如何实现用java判断网络连接状态?
小弟想了两个办法,不知行不行的通:
1.ping自己的机器来判断是否连接到局域网内,ping一个固定的网站,比如百度,来判断是否连接到互联网……
2.监听windows的判断网络连接状态的那个小功能(就是托盘图标那里显示“网络电缆没有插好”的那个),来实现这个小程序的功能。
关键是ping怎么和java结合到一起,并且java怎样获得windows中的这个数据流?
说白了就是跟windows的这个判断网络连接状态的小功能一样,就是用java做出这个小程序取代windows中的这个,也许我表达的不对也许想的不够多,
分数不够多了,希望大家能帮我这个忙,先谢了
...全文
141 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.net.HttpURLConnection;
import java.net.URL;

public class PingTest {

public static void main(String[] args) throws IOException {
String url = "www.baidu.com";
// 方法一
System.out.println("方法一");
Runtime runtime = Runtime.getRuntime();
Process process = runtime.exec("ping " + url);
BufferedReader br = new BufferedReader(new InputStreamReader(process.getInputStream()));
String str = "";
while((str = br.readLine()) != null) {
str = str.trim();
if(str.length() > 0) {
System.out.println(str);
}
}
br.close();

// 方法二
System.out.println("方法二");
URL u = new URL("http://" + url);
try {
HttpURLConnection http = (HttpURLConnection)u.openConnection();
if(http.getResponseCode() != 200) {
System.out.println(url + " connection error.");
}else{
System.out.println(url + " connection success.");
}
}catch(Exception e) {
System.out.println(url + " connection error.");
}
}
}
ray407 2007-12-11
  • 打赏
  • 举报
回复
自己顶起来
ray407 2007-12-11
  • 打赏
  • 举报
回复
大侠说详细点呗
  • 打赏
  • 举报
回复
Java中没有办法做出Windows程序中的ping命令!

可以获得ping执行后的数据流,但是只能获得字符串,需要自行解析。

62,623

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧