一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

服務(wù)器之家:專注于服務(wù)器技術(shù)及軟件下載分享
分類導(dǎo)航

PHP教程|ASP.NET教程|JAVA教程|ASP教程|

服務(wù)器之家 - 編程語言 - JAVA教程 - Windows系統(tǒng)中Java調(diào)用cmd命令及執(zhí)行exe程序的方法

Windows系統(tǒng)中Java調(diào)用cmd命令及執(zhí)行exe程序的方法

2020-04-09 15:09qiaolevip JAVA教程

這篇文章主要介紹了Windows系統(tǒng)中Java調(diào)用cmd命令及執(zhí)行exe程序的方法,主要用到了IOException類,需要的朋友可以參考下

Java調(diào)用cmd命令,并輸出顯示信息:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
package com.anxin.cmd.test;
 
import java.io.BufferedReader;
import java.io.InputStreamReader;
 
public class Command {
 
 public static void main(String[] args) {
  try {
   Runtime rt = Runtime.getRuntime();
   Process pr = rt.exec("cmd /c dir"); // cmd /c calc
   // Process pr = rt.exec("D:\\xunlei\\project.aspx");
 
   BufferedReader input = new BufferedReader(new InputStreamReader(pr.getInputStream(), "GBK"));
 
   String line = null;
 
   while ((line = input.readLine()) != null) {
    System.out.println(line);
   }
 
   int exitVal = pr.waitFor();
   System.out.println("Exited with error code " + exitVal);
 
  } catch (Exception e) {
   System.out.println(e.toString());
   e.printStackTrace();
  }
 }
}

Java啟動本機應(yīng)用程序EXE的三種方式:

第一種方式:利用cmd方式 

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
/**
 * 執(zhí)行cmd命令
 *
 * @param command
 * @throws IOException
 */
public static String executeCmd(String command) throws IOException {
 log.info("Execute command : " + command);
 Runtime runtime = Runtime.getRuntime();
 Process process = runtime.exec("cmd /c " + command);
 BufferedReader br = new BufferedReader(new InputStreamReader(process.getInputStream(), "UTF-8"));
 String line = null;
 StringBuilder build = new StringBuilder();
 while ((line = br.readLine()) != null) {
  log.info(line);
  build.append(line);
 }
 return build.toString();
}
 
executeCmd(start "AXAdWebBrowser" "D:\AXAdsBrowser\AXAdWebBrowser.exe");

第二種方式:利用ProcessBuilder調(diào)用cmd方式

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
/**
 * 啟動應(yīng)用程序
 *
 * @param programName
 * @return
 * @throws IOException
 */
public static void startProgram(String programPath) throws IOException {
 log.info("啟動應(yīng)用程序:" + programPath);
 if (StringUtils.isNotBlank(programPath)) {
  try {
   String programName = programPath.substring(programPath.lastIndexOf("/") + 1, programPath.lastIndexOf("."));
   List<String> list = new ArrayList<String>();
   list.add("cmd.exe");
   list.add("/c");
   list.add("start");
   list.add("\"" + programName + "\"");
   list.add("\"" + programPath + "\"");
   ProcessBuilder pBuilder = new ProcessBuilder(list);
   pBuilder.start();
  } catch (Exception e) {
   e.printStackTrace();
   log.error("應(yīng)用程序:" + programPath + "不存在!");
  }
 }
}

第三種方式:使用Desktop啟動應(yīng)用程序 

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
/**
 * 啟動應(yīng)用程序
 *
 * @param programName
 * @return
 * @throws IOException
 */
public static void startProgram(String programPath) throws IOException {
 log.info("啟動應(yīng)用程序:" + programPath);
 if (StringUtils.isNotBlank(programPath)) {
  try {
   Desktop.getDesktop().open(new File(programPath));
  } catch (Exception e) {
   e.printStackTrace();
   log.error("應(yīng)用程序:" + programPath + "不存在!");
  }
 }
}

 

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 2021国产麻豆剧传媒剧情 | 国产精品夜色视频一级区 | 法国女佣系列在线播放 | 99热精品在线免费观看 | 免费高清在线观看 | 欧美色图日韩色图 | 色偷偷亚洲综合网亚洲 | 亚洲嫩模吧粉嫩粉嫩冒白浆 | freee×xx性欧美| 2022天堂岛日产 | 久久学生精品国产自在拍 | 天堂资源在线www中文 | 成人国产精品视频频 | 青青青青青操 | 女人麻豆国产香蕉久久精品 | 国产精品永久免费10000 | 校花在公车上被内射好舒 | 1769国产精品免费视频 | 亚洲国产成人精品无码区APP | 性xxxx中国老妇506070 | 成人观看免费大片在线观看 | 欧美激情影音先锋 | 日韩欧美亚洲每日更新网 | 性做久久久久久久 | 国产成人性色视频 | 日韩欧美成末人一区二区三区 | 逼毛片| 国产精品久久久久久久久ktv | 无人区乱码1区2区3区网站 | 99精品国产成人一区二区在线 | 倩女还魂在线观看完整版免费 | 免费我看视频在线观看 | 视频一区国产精戏刘婷30 | 四虎影视黄色 | 动漫肉在线观看 | 亚洲国产精品一区二区久久 | 青青草在线播放 | 日韩欧美在线观看综合网另类 | 亚洲天堂中文 | 果冻传媒天美传媒在线小视频播放 | 九九热精品免费观看 |