public static void main(String[] args) {
    if (args.length != 2) {
      return;
    }
    String s1 = args[0];
    String s2 = args[1];
    System.out.println("s1: " + s1);
    System.out.println("s2: " + s2);

  }

1、不带空格的情况

 2、带空格的情况,需要用双引号将该参数包围

 3、带空格,同时含双引号

 处理代码

            String param1 = "1 1";
            // 处理参数
            param1 = "\"" + param1.replace("\"","\\\"") + "\"";

示例

    public static void main(String[] args) {
        try {
            String param1 = "1 \"1";
            System.out.println(param1);
            param1 = "\"" + param1.replace("\"","\\\"") + "\"";
            String param2 = "2 \"2";
            System.out.println(param2);
            param2 = "\"" + param2.replace("\"","\\\"") + "\"";
            String jarPath = "D:\\xxl.jar";//jar包路径
            String command = "java -jar " + jarPath + " " + param1 + " " + param2;
            Process exec = Runtime.getRuntime().exec(command);
            // printMessage(exec.getInputStream());
            // printMessage(exec.getErrorStream());
            int exit = exec.waitFor();//等待外部命令执行完毕,然后返回执行的结果
            exec.destroy();
            //按照约定,非零状态码表示异常终止。
            if (exit == 0) {
                System.out.println("正常完成");
            } else {
                System.out.println("异常结束");
            }
        } catch (Exception e) {
            e.printStackTrace();
        }
    }

参考:

java 处理带空格的参数args_args 将空格作为参数一部分_小饼干超人的博客-CSDN博客

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐