Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/389.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Runtime.getRuntime.exec()复制文件时出现问题_Java - Fatal编程技术网

Java Runtime.getRuntime.exec()复制文件时出现问题

Java Runtime.getRuntime.exec()复制文件时出现问题,java,Java,我想使用以下方法复制文件: Process process = Runtime.getRuntime() .exec("cmd.exe /c copy C:\test1\toto.PDF C:\test2\toto.PDF"); 当我手动执行该命令时,它可以工作,但当我试图从IDE执行时,什么也没有发生。 谁能告诉我这个有什么问题吗 谢谢。您需要将反斜杠加倍\t本身转换为制表符 (你在这里很不走运,好像你的路径不一样,你可能得到了一个编译器错误,给了你一个提示。)你需要加倍反斜

我想使用以下方法复制文件:

Process process = Runtime.getRuntime()
     .exec("cmd.exe /c  copy  C:\test1\toto.PDF  C:\test2\toto.PDF");
当我手动执行该命令时,它可以工作,但当我试图从IDE执行时,什么也没有发生。 谁能告诉我这个有什么问题吗


谢谢。

您需要将反斜杠加倍<代码>\t本身转换为制表符


(你在这里很不走运,好像你的路径不一样,你可能得到了一个编译器错误,给了你一个提示。)

你需要加倍反斜杠<代码>\t本身转换为制表符


(你在这里很不走运,好像你的路径不一样,你可能得到了一个编译器错误,给了你一个提示。)

你的直接错误是
\t
是一个制表符。你忘了把反斜杠加倍,所以文件名被弄乱了。但是,正如其他人所建议的,使用来进行复制。

您的直接错误是
\t
是制表符。你忘了把反斜杠加倍,所以文件名被弄乱了。但是,正如其他人所建议的,使用来复制。

这里有一篇关于
copy
是cmd.exe的内置文件还是单独的可执行文件

为了避免对空格/制表符的误解,我会将字符串分成几个部分:

"cmd.exe", "/c", "copy", "C:\test1\toto.PDF", "C:\test2\toto.PDF"

但这一切都非常依赖于平台。您应该使用java读取文件并将其写入目标位置

这里有一篇关于
copy
是cmd.exe的内置文件还是单独的可执行文件

为了避免对空格/制表符的误解,我会将字符串分成几个部分:

"cmd.exe", "/c", "copy", "C:\test1\toto.PDF", "C:\test2\toto.PDF"

但这一切都非常依赖于平台。您应该使用java读取文件并将其写入目标位置

-不需要执行董事不需要执行官,接得好。当我需要混淆某些代码时,我会记住它。:)接得好。当我需要混淆某些代码时,我会记住它。:)