我想使用此代码通过java中的cmd创建一个文件
Runtime.getRuntime().exec("mkdir C:\\Users\\Nick\\test");
我收到这个恼人的错误:
Exception in thread "main" java.io.IOException: Cannot run program "mkdir": CreateProcess error=2, The system cannot find the file specified
at java.lang.ProcessBuilder.start(Unknown Source)
at java.lang.Runtime.exec(Unknown Source)
at java.lang.Runtime.exec(Unknown Source)
at java.lang.Runtime.exec(Unknown Source)
at LFID.main(LFID.java:11)
Caused by: java.io.IOException: CreateProcess error=2, The system cannot find the file specified
at java.lang.ProcessImpl.create(Native Method)
at java.lang.ProcessImpl.<init>(Unknown Source)
at java.lang.ProcessImpl.start(Unknown Source)
... 5 more
我不知道是什么原因造成的,所以请帮忙。
顺便说一句,请不要告诉我如何不通过cmd创建文件夹,我需要这样做。谢谢。
mkdir
不是一个可以作为单独进程启动的独立可执行文件 - 它是 Windows 命令 shell 可以理解的命令。
So you could run cmd.exe /c mkdir ...
:
Runtime.getRuntime().exec("cmd.exe /c mkdir c:\\Users\\Nick\\test");
Or:
Runtime.getRuntime().exec(
new String[] { "cmd.exe", "/c" "mkdir" "c:\\Users\\Nick\\test"});
...但我仍然建议只使用File.mkdir相反...当您可以在 Java 中调用外部进程时,为什么还要调用它呢? (如果您要指定一个奇怪的要求,那么提供更多背景信息会有所帮助......)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)