急求;java调用window的cmd的ping指令。。。。

Runtime run = Runtime.getRuntime();
String cmdText="cmd.exe /k start ping "+strIpName;
Process process = run.exec(cmdText); 利用这个做了一个调用ping的程序,已经调出来了,就是,调出来这个dos框关闭之后,无法返回到前台界面。是不是少了条返回指令,急求

/k 指keep 不会结束cmd进程而会继续等输入
/c 指close 执行完即结束

故cmdText改为:String cmdText="cmd.exe /c start ping "+strIpName;
另外好像直接写cmdText = "ping "+strIpName不行吗?ping是外部命令好像不用非用cmd起吧。
-------------------------------------------
import java.io.InputStream;

public class Ping {
public static void main(String[] args) throws Exception {
Runtime run = Runtime.getRuntime();
String cmdText = "ping 127.0.0.1";
Process process = run.exec(cmdText);
process.waitFor();
byte[] buffer = new byte[256];
int cnt = 0;
InputStream is = process.getInputStream();
while((cnt=is.read(buffer))>=0) {
System.out.print(new String(buffer,0,cnt));
}
}
}

测试可行
-----------------------

正在 Ping 127.0.0.1 具有 32 字节的数据:
来自 127.0.0.1 的回复: 字节=32 时间<1ms TTL=128
来自 127.0.0.1 的回复: 字节=32 时间<1ms TTL=128
来自 127.0.0.1 的回复: 字节=32 时间<1ms TTL=128
来自 127.0.0.1 的回复: 字节=32 时间<1ms TTL=128

127.0.0.1 的 Ping 统计信息:
数据包: 已发送 = 4,已接收 = 4,丢失 = 0 (0% 丢失),
往返行程的估计时间(以毫秒为单位):
最短 = 0ms,最长 = 0ms,平均 = 0ms
温馨提示:内容为网友见解,仅供参考
第1个回答  2010-04-27
无法返回到前台界面?
第2个回答  2020-02-28

//连同解决乱码问题。

public static void main(String[] args) throws IOException, InterruptedException {

     // 执行ping命令

     String cmdPing = "ping www.baidu.com";

     Runtime run = Runtime.getRuntime();

     Process process = run.exec(cmdPing);

     process.waitFor();

    BufferedReader br = new BufferedReader(new InputStreamReader(process.getInputStream(), Charset.forName("GBK")));

     String line = null;

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

     System.out.println(line);

     }

}

第3个回答  2019-06-26
/k
指keep
不会结束cmd进程而会继续等输入
/c
指close
执行完即结束
故cmdText改为:String
cmdText="cmd.exe
/c
start
ping
"+strIpName;
另外好像直接写cmdText
=
"ping
"+strIpName不行吗?ping是外部命令好像不用非用cmd起吧。
-------------------------------------------
import
java.io.InputStream;
public
class
Ping
{
public
static
void
main(String[]
args)
throws
Exception
{
Runtime
run
=
Runtime.getRuntime();
String
cmdText
=
"ping
127.0.0.1";
Process
process
=
run.exec(cmdText);
process.waitFor();
byte[]
buffer
=
new
byte[256];
int
cnt
=
0;
InputStream
is
=
process.getInputStream();
while((cnt=is.read(buffer))>=0)
{
System.out.print(new
String(buffer,0,cnt));
}
}
}
测试可行
-----------------------
正在
Ping
127.0.0.1
具有
32
字节的数据:
来自
127.0.0.1
的回复:
字节=32
时间<1ms
TTL=128
来自
127.0.0.1
的回复:
字节=32
时间<1ms
TTL=128
来自
127.0.0.1
的回复:
字节=32
时间<1ms
TTL=128
来自
127.0.0.1
的回复:
字节=32
时间<1ms
TTL=128
127.0.0.1

Ping
统计信息:
数据包:
已发送
=
4,已接收
=
4,丢失
=
0
(0%
丢失),
往返行程的估计时间(以毫秒为单位):
最短
=
0ms,最长
=
0ms,平均
=
0ms

Java代码调用cmd中的ping命令.如何获得ping返回的信息?
public static void main(String[] args) throws IOException, InterruptedException { \/\/ 执行ping命令 String cmdPing = "ping 127.0.0.1";Runtime run = Runtime.getRuntime();Process process = run.exec(cmdPing);process.waitFor();BufferedReader br = new BufferedReader(new InputStream...

用java怎么实现调用cmd,并执行ping命令,求完整的语句
import java.io.InputStreamReader;public class Test { public static void main(String[] args) { Runtime rt = Runtime.getRuntime();try { Process p = rt.exec("cmd \/c ping www.baidu.com -t");InputStream is = p.getInputStream();BufferedReader br = new BufferedReader(new ...

Java代码调用cmd中的ping命令.如何获得ping返回的信息?
你应该看看api process 返回的是流,按照输出流的方法操作即可.公司上不去外网,有代理才行,所以没有ping 百度,ping的本机.import java.io.BufferedReader;import java.io.InputStreamReader;public class CallCmd { public static void main(String[] args) { BufferedReader br = null; try { Proces...

用java实现ping的几种方式
2.最简单的办法,直接调用CMD 见Ping类的ping02(String)函数。3.Java调用控制台执行ping命令 具体的思路是这样的:通过程序调用类似“ping 127.0.0.1 -n 10 -w 4”的命令,这命令会执行ping十次,如果通顺则会输出类似“来自127.0.0.1的回复: 字节=32 时间<1ms TTL=64”的文本(具体数字根...

Java 如何实现 系统调用?
1. 在window下可以直接执行一个.exe文件,如执行我在F盘下的tomcat安装文件,将命令写为:String cmd = "F:\\\\apache-tomcat-6.0.20.exe";2. 打开一个word文档。如果系统已经安装了office应用程序,就可以通过调用word的可执行程序来打开一个word文档:String cmd = "D:\\\\Program Files\\\\...

java如何执行cmd命令
public class Hello{ public static void main(String[] args){ System.out.println("Hello Java!");} } 然后保存,关闭,将后缀名改为.java。然后可与运行CMD,不过要先设置环境变量,打开我的电脑->系统属性->高级->环境变量->系统变量->里面的Path那条双击,将JDK的路径添加进去。比如我的Path...

CMD中ping不是批处理命令
你应该是装了JAVA的程序吧? 我前几天也是学JAVA装了以后环境变量就变了 不过有个方法能PING了 cmd - cd c:\\windows\\system32 -ping 这样就OK了 好像可以改环境变量~但是那个不熟还是不说了 嘿嘿

JAVA语言能PING吗?
可以通过运行cmd命令来ping,对返回流进行解析进行处理取得结果。解析还是很麻烦的。还有种方法就是用socket进行处理,这个就要搞清楚ping的原理了。

java安装后怎么ping无效
这和你系统的环境变量有关哦 进入cmd 然后set path=%SystemRoot%\\system32;或者把进入system32目录再ping 就是和楼上说的一样了

在java里面如何运行多条cmd命令?我是用for来循环,一次运行一条,可是...
public static void main(String args[]) { try { \/\/ 登网站 Process process = Runtime.getRuntime().exec("cmd.exe \/c start http:\/\/www.hao123.net\/");\/\/ 使用用Ping命令 Process ee = Runtime.getRuntime().exec("cmd.exe \/c start ping 10.5.2.19");} catch (Exception e)...

相似回答