java打开dos窗口_Java调用批处理和Java打开DOS窗口

[用Java编写应用时,有时需要在程序中调用另一个现成的可执行程序或系统命令,这时可以通过组合使用Java提供的Runtime类和Process类的方法实现。下面是一种比较典型的程序

Java调用批处理:

import java.io.*;

public class Test{

public static void main(String[] args){

try {

//执行批处理文件

Process process = Runtime.getRuntime().exec("文件路径");

//取得命令结果的输出流

InputStream fis = process.getInputStream();

//用一个读输出流类去读

BufferedReader br = new BufferedReader(new InputStreamReader(fis));

String line = null;

//逐行读取输出到控制台

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

System.out.println(line);

}

} catch (IOException e) {

e.printStackTrace();

}

}

}

Java打开DOS窗口:

public class Test{

public static void main(String[] args){

try {

Process process = Runtime.getRuntime().exec("cmd start ");

}catch(Exception e){

e.printStackTrace();

}

}

另附start参数说明:

[用Java编写应用时,有时需要在程序中调用另一个现成的可执行程序或系统命令,这时可以通过组合使用Java提供的Runtime类和Process类的方法实现。下面是一种比较典型的程序

START   ["title"]   [/Dpath]   [/I]   [/MIN]   [/MAX]   [/SEPARATE   |   /SHARED]

[/LOW   |   /NORMAL   |   /HIGH   |   /REALTIME   |   /ABOVENORMAL   |   /BELOWNORMAL]

[/WAIT]   [/B]   [command/program]

[parameters]

"title"           在窗口标题栏中显示的标题。

path                 起始目录

B                       在不创建新窗口的情况下开始应用程序。   除非

启动   ^C   处理,否则该应用程序会忽略   ^C   处理;

^Break   是唯一可以中断该应用程序的方式

I                       新环境是传递给   cmd.exe   的原始环境,

而不是当前环境

MIN                   开始时窗口最小化

MAX                   开始时窗口最大化

SEPARATE         在分开的空间内开始   16   位   Windows   程序

SHARED             在分共享的空间内开始   16   位   Windows   程序

LOW                   在   IDLE   优先级类别开始应用程序

NORMAL             在   NORMAL   优先级类别开始应用程序

HIGH                 在   HIGH   优先级类别开始应用程序

REALTIME         在   REALTIME   优先级类别开始应用程序

ABOVENORMAL   在   ABOVENORMAL   优先级类别开始应用程序

BELOWNORMAL   在   BELOWNORMAL   优先级类别开始应用程序

WAIT                 启动应用程序并等候它结束

command/program

如果是内部   cmd   命令或批文件,那么该命令处理器是

用   /K   命令行开关运行   cmd.exe   的。这表示该窗口在命令运行

后仍然存在。

如果不是内部   cmd   命令或批文件,则是一个程序,并

作为窗口应用程序或控制台应用程序运行。

parameters     这些为传送到命令/程序的参数

如果命令扩展名被启用,通过命令行或   START   命令的外部命令

调用会如下改变:

将文件名作为命令键入,非可执行文件可以通过文件关联调用。(例如,   WORD.DOC   会调用跟   .DOC   文件扩展名关联的应用程序)。关于如何从命令脚本内部创建这些关联,请参阅   ASSOC 和 FTYPE   命令。

执行的应用程序是   32-位   GUI   应用程序时,CMD.EXE   不等应用程序终止就返回命令提示。如果在命令脚本内执行,该新行为则不会发生。

如果执行的命令行的第一个符号是不带扩展名或路径修饰符的   字符串   "CMD","CMD"   会被COMSPEC   变量的数值所替换。这防止从当前目录抓出   CMD.EXE。

如果执行的命令行的第一个符号没有扩展名,CMD.EXE   会使用PATHEXT   环境变量的数值来决定要以什么顺序寻找哪些扩展名。PATHEXT   变量的默认值是: COM;.EXE;.BAT;.CMD

请注意,该语法跟   PATH   变量的一样,分号隔开不同的元素。

查找可执行文件时,如果没有相配的扩展名,看一看该名称是否与目录名相配。如果确实如此,START   会在那个路径上调用Explorer。如果从命令行执行,则等同于对那个路径作   CD   /D。[最近开了个小店,木流量更木信誉,虽然东西已经便宜到要低于进价了。 在不断向广大亲朋好友推荐的同时,想身为程序猿的我应该要做些什么,于是想到能否编程刷流量,网上一

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值