可以说我有这个代码
import java.io.IOException;
public class Test
{
public static void main(String[] argv) throws InterruptedException, IOException {
String path = "/an app with spaces.app";
path = path.replaceAll(" ", "\\\\ ");
System.out.println(path);
Runtime.getRuntime().exec( new String[] { "open", path} );
Runtime.getRuntime().exec("syslog -s -l " + path);
}
}
问题是当我在 print 中输出路径并在终端中尝试命令时,它会打开应用程序,但是当我尝试从 Java 执行命令时,它就会关闭,也许是转义反斜杠的问题?我要做的就是打开一个名称中带有空格的应用程序,无论是否使用终端。