将CMD命令输出到控制台!
来源:互联网 发布:c语言预处理命令三种 编辑:程序博客网 时间:2024/06/06 17:45
- package com.eshore.sweetop.io;
- import java.io.BufferedReader;
- import java.io.InputStreamReader;
- public class OSExecute {
- public static void command(String command) {
- try {
- Process process=new ProcessBuilder(command.split(" ")).start();
- BufferedReader results=new BufferedReader(new InputStreamReader(process.getInputStream()));
- String s;
- while((s=results.readLine())!=null){
- System.out.println(s);
- }
- BufferedReader errors=new BufferedReader(new InputStreamReader(process.getErrorStream()));
- while((s=errors.readLine())!=null){
- System.err.println(s);
- }
- } catch (Exception e) {
- if(!command.startsWith("CMD /C")){
- command("CMD /C"+command);
- }else{
- throw new RuntimeException(e);
- }
- }
- }
-
- public static void main(String[] args) {
- OSExecute.command("dir");
- }
- }
- package com.eshore.sweetop.io;
- import java.io.BufferedReader;
- import java.io.InputStreamReader;
- public class OSExecute {
- public static void command(String command) {
- try {
- Process process=new ProcessBuilder(command.split(" ")).start();
- BufferedReader results=new BufferedReader(new InputStreamReader(process.getInputStream()));
- String s;
- while((s=results.readLine())!=null){
- System.out.println(s);
- }
- BufferedReader errors=new BufferedReader(new InputStreamReader(process.getErrorStream()));
- while((s=errors.readLine())!=null){
- System.err.println(s);
- }
- } catch (Exception e) {
- if(!command.startsWith("CMD /C")){
- command("CMD /C"+command);
- }else{
- throw new RuntimeException(e);
- }
- }
- }
-
- public static void main(String[] args) {
- OSExecute.command("dir");
- }
- }