我有以下代码
public class MyClass {
public MyClass (String myString){
myFlag=myString
}
ProcessBuilder pb = new ProcessBuilder("Path to my application", "variousflags", myFlag)
Process p = pb.start();
}
当我跑步时
myClass("worddocument.doc")
pb无法启动。在调试MyClass时,我注意到:
myFlag ="worddocument.doc
没有最终报价。对于在ProcessBuilder中工作的标志,它必须在引号内。 我必须包括
行myFlag= myFlag.concat(""");
它给了我Netbeans“unclosed string literal”中的错误消息。如何摆脱整齐的错误,甚至更好,我怎样才能得到最终报价? 感谢
答案 0 :(得分:2)
stringFlag= stringFlag.concat(""");
会导致问题,因为你的ide认为你在第二个引号处关闭字符串。
尝试逃避第二个引号。
stringFlag= stringFlag.concat("\"");
答案 1 :(得分:0)
问题现在已经消失:-)它一定是netbeans或java中的一个bug ... 不幸的是,我无法重现这个问题,而且我不确定它何时会自行修复。 如果遇到同样的问题,我会建议: 1台重启电脑, 2重启Netbeans, 3评论
myFlag= myFlag.concat("\"");