使用java 去ping 通ip地址

版权声明:转载的话 请标明出处 https://blog.csdn.net/qq_28198181/article/details/84377797

这是属于java 进行网络编程的部分

一般我们可以在winodws 使用 cmd 去ping  ip ,也可以在 linux 等服务器上去ping ip ,

比如(win):

(linux):

这次 想在 java程序中去 使用这个方法

可以如下:

public class ping {


    public static void main(String[] args) {

        try {
            Process  p = Runtime.getRuntime().exec("ping 10.185.151.20");

            BufferedReader reader = new BufferedReader(new InputStreamReader(p.getInputStream(),"GBK"));

            String line =null;

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

                if (line.length()!=0){
                    System.out.println(line.toString());
                }

            }


        } catch (IOException e) {
            e.printStackTrace();
        }


    }

}

我们要去调用外部的一个程序或者命令 就可以去使用 Runtime.getRunTime().exec();

这个方法有6个重载方法,我们这里是用的执行指定字符串命令的方法,可以参考下(http://www.cnblogs.com/xinmengwuheng/p/5970255.html)

然后 返回的是一个Process对象(这个Process类是一个抽象类,里面有获取流的方法)

需要使用这个对象去得到Input流,

获取流同时windows系统需要注意编码格式。

编码需要转成GBK格式,如果是默认的话是UTF-8 这样在windows上是会形成乱码。

然后读取数据 读完输出

猜你喜欢

转载自blog.csdn.net/qq_28198181/article/details/84377797