Java无效的转义序列

时间:2015-05-05 07:11:16

标签: java command exec command-window

我有这个错误:"无效的转义序列(有效的转义序列是\ b \ t ..."在我的代码Java中。

我在我的code.java中创建:

    ...
    r.exec("cmd /c D:\Doc and Settings\USER\Bureau\Apps-Two.loc.nal");
    ...

问题在于逃避。 如何解决这个问题?

谢谢

2 个答案:

答案 0 :(得分:3)

你必须逃避逃脱的角色:

r.exec("cmd /c D:\\Doc and Settings\\USER\\Bureau\\Apps-Two.loc.nal");

请参阅Escape Sequences for Character and String Literals

EscapeSequence:
    \ b    /* \u0008: backspace BS */
    \ t    /* \u0009: horizontal tab HT */
    \ n    /* \u000a: linefeed LF */
    \ f    /* \u000c: form feed FF */
    \ r    /* \u000d: carriage return CR */
    \ "    /* \u0022: double quote " */
    \ '    /* \u0027: single quote ' */
    \ \              /* \u005c: backslash \ */
    OctalEscape        /* \u0000 to \u00ff: from octal value */

答案 1 :(得分:0)

r.exec("cmd /c D:\Doc and Settings\USER\Bureau\Apps-Two.loc.nal"); // Compiler not able to understand this backslash.

你应该使用" \\"您想在哪里使用实际反斜杠(\)

像这样更改您的文件夹路径

r.exec(" cmd / c D:\\ oc和Settings \\ USER \\ Bureau \\ Apps-Two.loc.nal");

请参阅附表以供参考

enter image description here