我正在尝试使用Java映射驱动器。代码运行正常,驱动器没有映射。
zing = "M: \\\\Ds-file2-2\\Quality Archive";
String command = "c:\\windows\\system32\\net.exe use " + zing;
Process p = Runtime.getRuntime().exec(command);
我试图在该服务器上映射其他文件夹并且它们可以正常工作。我试过映射 Windows中的驱动器和工作原理。我尝试用空格映射另一个文件夹,但失败了。我以为引号会捕获名称中的空格。没有 错误发生。
提前致谢!
答案 0 :(得分:1)
您的问题是您希望在执行命令时显示字符串周围的引号。但你实际上并没有添加引号。在当前状态下,command
为c:\\windows\\system32\\net.exe use M: \\\\Ds-file2-2\\Quality Archive
。我假设你希望它是c:\\windows\\system32\\net.exe use "M: \\\\Ds-file2-2\\Quality Archive"
。
在这种情况下,将zing
更改为zing = "\"M: \\\\Ds-file2-2\\Quality Archive\"". This is escaping the quotes with
\“, and thus
命令becomes
c:\ windows \ system32 \ net.exe使用”M:\\ Ds- file2-2 \ Quality Archive“`。
上面的代码会变成这样:
zing = "\"M: \\\\Ds-file2-2\\Quality Archive\"";
String command = "c:\\windows\\system32\\net.exe use " + zing;
Process p = Runtime.getRuntime().exec(command);