我通过以下代码
使用java启动命令提示符Runtime rt = Runtime.getRuntime();
Process proc = rt.exec("cmd /c start cmd.exe /K \"dir > D:\test1.txt");
执行第二行后,我收到错误,因为访问被拒绝'我无法将命令提示符的输出重定向到文本文件。
有人可以帮忙吗?
答案 0 :(得分:0)
在OnStart
之后加倍反斜杠,这样它就不会在命令字符串中插入制表符(D:
):
\t
您还需要修复插入的引用(Process proc = rt.exec("cmd /c start cmd.exe /K \"dir > D:\\test1.txt");
),因为它没有结束。要么删除它,要么添加适当的结束引用(最后?)。
答案 1 :(得分:0)
您可以使用
Process proc = rt.exec("cmd /c start cmd.exe /K \"dir);
OutputStream = proc.getOutputStream();
然后将输出写入文件
反斜杠用于java中的转义字符之前。您需要正确格式化路径