Runtime.getRuntime().exec(cmd,envp,dir)执行命令cmd中目录含连续空格执行出错

场景:因cmd中含有jre路径,而jre路径因测试创建的目录中含(haha)-  -(haha) ,其中含有两个空格,导致后续底层在截取,重组命令后缺失了一个空格,目录中(haha)-  -(haha)变成了(haha)- -(haha),找不到路径而命令执行失败

处理:因为对于exec(cmd,envp,dir)方法,将cmd中带点参数用""(双引号)引起来是可以处理含单空格的,但是对于双空格就会出问题,若envp,dir为空,

   可调整为使用exec(String[])方法,将命令和参数都放入数组中,可以忽略掉参数含有多少个空格

原文地址:https://www.cnblogs.com/aimed/p/10066824.html