/**

* 测试设备网络状态

*

* @return boolean

* @throws Exception

*/

private static boolean connectTest() throws Exception {

String OS = System.getProperty("os.name").toLowerCase();

int pingTimes = 4;

String pingCommand = "";

if (OS.indexOf("windows")>=0) {

pingCommand = "ping " + ip + " -n " + pingTimes;

} else {

pingCommand = "ping " + "-c " + pingTimes + " " + ip;

}

boolean status = isReachable(pingCommand, pingTimes);

if (!status) {

throw new Exception("设备不能连接(ping 不通!!!)");

}

return status;

}

/** * 测试是否能ping通

* * @param server

* * @param timeout

* * @return */

private static boolean isReachable(String pingCommand, int pingTimes) {

BufferedReader in = null;

Runtime r = Runtime.getRuntime();

try {

// 执行命令并获取输出

System.out.println(pingCommand);

Process p = r.exec(pingCommand);

if (p == null) {

return false;

}

in = new BufferedReader(new InputStreamReader(p.getInputStream()));

// 逐行检查输出,计算类似出现=23ms TTL=62字样的次数

int connectedCount = 0;

String line = null;

while ((line = in.readLine()) != null) {

connectedCount += getCheckResult(line);

}

// 如果出现类似=23ms TTL=62这样的字样,出现的次数=测试次数则返回真

return connectedCount == pingTimes;

} catch (Exception ex) {

ex.printStackTrace();

// 出现异常则返回假

return false;}

finally {

try {

in.close();

} catch (IOException e) {

e.printStackTrace();

}

}

}

分享到:

2015-01-20 12:45

浏览 3061

评论

java 测试网络_java Ping操作(测试网络)相关推荐

  1. android检测sim卡状态,android 判断网络连接、sim卡信息以及ping操作是否网络连接正常...

    //判断是否为wifi连接 public boolean isWifiConnected(Context context) { if (context != null) { ConnectivityM ...

  2. iphone7测试软件,iPhone7如何测试网速 ping命令测试网速方法介绍

    电脑设备测试网速的方法有很多,了解的小伙伴应该都知道那么几种.但是如果我们想要测试iPhone手机的网速,该怎么弄呢?这个估计就没有多少小伙伴知道了.下面小编来教一教大家怎么使用ping来测试网速. ...

  3. java外部接口图解_java代码实现访问网络外部接口并获取数据的工具类详解

    java代码实现访问网络外部接口并获取数据的工具类 工具类代码,可以直接copy使用 package com.yqzj.util; import org.apache.log4j.LogManager ...

  4. java socket 路由_JAVA简单的Socket网络编程!CS

    好久没写socket代码了,也忘了八九成了--话不多说!直接上代码吧! Server服务 package test1; import java.io.*; import java.net.*; pub ...

  5. java callback 多线程_JAVA Callback效率测试

    在最近的联网电商项目中,想要实现单个web容器内的支付请求,全部能够统一宏观上同步,实现粒度上面异步,找来找去,没有相关方面的框架或者方案,于是最后基于现实场景,打算使用Java callback 的 ...

  6. java算术运算测试思想_Java四则运算课堂测试三

    packageyunsuan;importjava.util.Scanner;importjavax.script.ScriptEngine;importjavax.script.ScriptEngi ...

  7. java ldap 父_Java LDAP操作

    命名和目录操作 您可以使用JNDI执行以下操作:读取操作和更新命名空间的操作.本节介绍这两个操作: l查询对象 l列出上下文内容 l添加.覆盖和移除绑定 l重命名对象 l创建和销毁子上下文 配置 在命 ...

  8. java序列化编码_java IO操作(输入,输出,序列化,编码方式)示例代码 第一部分...

    File类主要功能有文件的创建,目录的创建,临时文件的创建,文件和目录的删除以及文件列表的获取和过滤工作.下面是一个关于File类的操作. package com.guan.chapter27.jav ...

  9. java io效率_JAVA IO操作的总结 和速度实验

    IO两种操作的区别 字节操作 byte类型操作,所有数表示为byte数组 读取输出要先转换成byte类型,才能进一步转换为字符串 不会运用到缓存 常用于处理二进制数据 字符操作 操作character ...

  10. java excel 列_java 如何操作excel 插入一列

    首先你要了解excel文件的构成,这里给你一个大概的轮廓: HSSFWorkbook excell的文档对象 HSSFSheet excell的表单 HSSFRow excell的行 HSSFCell ...

最新文章

  1. 想做程序员却不知从何下手?新手入门信息打包送你!
  2. Windows上安装AD域控制器注意事项及常见问题处理办法
  3. Mac Vim 如何设置高亮
  4. bootstrap 按钮颜色属性
  5. Python-100 练习题 02
  6. 教你如何在Android Studio中使用DDMS工具查看logcat——移动测试Android app(app的性能监控与测试)
  7. 学会这两招,快速突出图表重点,让老板眼前一亮
  8. 用技术谱写美好生活,「亚马逊云科技线上黑客松2021」报名开启!
  9. phpquery类php,phpquery 最基础的例子
  10. nginx负载php导致时间不一致,nginx – 为什么php-fpm会产生并在没有服务器负载的情况下每秒摧毁数百个孩子?...
  11. 小知识:Windows XP优化全攻略(网吧型)
  12. 我的姥爷走了,今后再也没有这个严厉而又较真儿的人
  13. 光环五正在连接服务器,五亿美元打水漂了?追了这么久的光环系列,玩家根本没法看...
  14. fx5u怎么与计算机通讯,两个FX5U系列PLC如何用RS485进行通信幻灯片
  15. 讯飞星火 VS 文心一言:谁是中文大语言模型的TOP1?
  16. 给企业微信成员不同人发不同的文件
  17. 九龙证券|券商春季策略扎堆来袭 风格切换成焦点
  18. 用MATLAB做周期三角波的傅里叶级数,Matlab 周期方波信号傅里叶级数展开
  19. 看过《非你莫属》那期,因为刘俐俐,说说陈鸥
  20. 什么是多媒体应用开发?

热门文章

  1. Dell PowerEdge RAID控制器存在一个潜在问题
  2. 工程师一定要有 “Owner 意识”
  3. Matlab求解椭球上运动的点B,满足到定点A、C的距离之和最短
  4. 千古绝唱——陆游和唐琬
  5. python的str是什么意思?
  6. MongoDB之学习【一】:初识Mongo,路远道长,绵绵不绝
  7. xxjob分布式定时任务简单入门和改造
  8. 服装系统mysql设计_服装行业ERP系统的设计与实现-店铺模块(SSH,MySQL)(含录像)
  9. html 防网页假死,htmlweb开发:防止浏览器假死的方法.doc
  10. 气相色XD谱灵敏度解析及载气不纯解决方案