Java执行外部程序并返回结果
发布时间:2020-12-14 23:38:13 所属栏目:Java 来源:网络整理
导读:今天PHP站长网 52php.cn把收集自互联网的代码分享给大家,仅供参考。 import java.io.*;/** * 示例:执行进程并返回结果 */public class ProcessExecutor { public static final int SUCCESS = 0; // 表示程序执行成功 pu
以下代码由PHP站长网 52php.cn收集自互联网 现在PHP站长网小编把它分享给大家,仅供参考 import java.io.*; /** * 示例:执行进程并返回结果 */ public class ProcessExecutor { public static final int SUCCESS = 0; // 表示程序执行成功 public static final String COMMAND = "java.exe -version"; // 要执行的语句 public static final String SUCCESS_MESSAGE = "程序执行成功!"; public static final String ERROR_MESSAGE = "程序执行出错:"; public static void main(String[] args) throws Exception { // 执行程序 Process process = Runtime.getRuntime().exec(COMMAND); // 打印程序输出 readProcessOutput(process); // 等待程序执行结束并输出状态 int exitCode = process.waitFor(); if (exitCode == SUCCESS) { System.out.println(SUCCESS_MESSAGE); } else { System.err.println(ERROR_MESSAGE + exitCode); } } /** * 打印进程输出 * * @param process 进程 */ private static void readProcessOutput(final Process process) { // 将进程的正常输出在 System.out 中打印,进程的错误输出在 System.err 中打印 read(process.getInputStream(),System.out); read(process.getErrorStream(),System.err); } // 读取输入流 private static void read(InputStream inputStream,PrintStream out) { try { BufferedReader reader = new BufferedReader(new InputStreamReader(inputStream)); String line; while ((line = reader.readLine()) != null) { out.println(line); } } catch (IOException e) { e.printStackTrace(); } finally { try { inputStream.close(); } catch (IOException e) { e.printStackTrace(); } } } } 以上内容由PHP站长网【52php.cn】收集整理供大家参考研究 如果以上内容对您有帮助,欢迎收藏、点赞、推荐、分享。 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- java – 调用Thread.stop方法时可能会发生什么样的损坏?
- java – 仅在Apache Commons CLI中需要一个参数?
- Java面试题复习之Java基础 谈谈HTTPSpring(十六
- 反序列化 – 用于java.util.Date的Gson Deserializer
- java – 如何在hibernate / jpa实体中使用“size”作为字段
- Java pong游戏图形或geom 2D
- java – 捆绑OSGi依赖库的标准方法是什么?
- java – 如何捕获trayicon.displayMessage()鼠标点击工具提
- java – 我可以修改现有对象的JComboBox弹出背景颜色吗?
- java – jsp查看日志文件(如“web tail -f”)