工具类(执行CMD命令返回结果)

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.ArrayList;
import java.util.List;

public class CmdUtils {

    public static List<String> runNative(String cmdToRun) {
        String[] cmd = cmdToRun.split(" ");
        return runNative(cmd);
    }
    public static List<String> runNative(String[] cmdToRunWithArgs) {
        Process p = null;
        try {
            p = Runtime.getRuntime().exec(cmdToRunWithArgs);
        } catch (SecurityException se) {
            se.printStackTrace();
            return new ArrayList(0);
        } catch (IOException ie) {
            ie.printStackTrace();
            return new ArrayList(0);
        }
        ArrayList<String> sa = new ArrayList();
        BufferedReader reader = new BufferedReader(new InputStreamReader(p.getInputStream()));
        ArrayList result;
        try {
            String line;
            while((line = reader.readLine()) != null) {
                sa.add(line);
            }
            p.waitFor();
            return sa;
        } catch (IOException ie) {
            ie.printStackTrace();
            result = new ArrayList(0);
        } catch (InterruptedException ie) {
            ie.printStackTrace();
            Thread.currentThread().interrupt();
            return sa;
        } finally {
            try {
                if (reader != null) {
                    reader.close();
                }
            } catch (IOException ie) {
                ie.printStackTrace();
            }
        }
        return result;
    }
}

你可能感兴趣的:(工具类,java,开发语言)