package org.infosec.ismp.manager.ping;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.nio.CharBuffer;
/**
* 用于windows下ping服务
*
* @author jiel
*
*/
public class WindowsPinger {
public static String ping(String ip) throws IOException {
StringBuffer pingResult = new StringBuffer();
StringBuffer pingCmd = new StringBuffer("ping " + ip);
Runtime r = Runtime.getRuntime();
Process p = r.exec(pingCmd.toString());
BufferedReader in = new BufferedReader(new InputStreamReader(p
.getInputStream(),"GB2312"));
char[] charbuffer = new char[256] ;
int count;
while ((count=in.read(charbuffer))>0) {
pingResult.append(charbuffer,0,count);
}
in.close();
// byte[] buffer = new byte[256];
// int cnt = 0;
// InputStream is = p.getInputStream();
// while((cnt=is.read(buffer))>=0) {
//// System.out.print(new String(buffer,0,cnt));
// pingResult.append(new String(buffer,0,cnt,"GB2312"));
// }
// is.close();
return pingResult.toString();
}
public static void main(String[] args) throws IOException {
System.out.println(ping("www.163.com"));
}
}