创建的文件进行任何操作,这就是我想实现: 运行Java程序的批处理文件。批处理在特定文件夹中创建一个新文件,比如文件夹'A'。一旦创建新文件,JAVA程序将新创建的文件从文件夹'A'移动到文件夹'B'。无法通过批量
以下是代码片段: 新文件被文件夹中的“A”发布:
// Run a batch that creates a file
String[] cmd = new String[]{"cmd", "/C", "start /min" + batchFilePath + batchFileName};
Process proc = Runtime.getRuntime().exec(cmd);
proc.waitFor();
// Command in the batch file
dir c:\ > C:\Chen_Med\EDICron\EDIOUT\test.edi
exit
// Move the file created by batch
boolean result2= ediOutFile.renameTo(new File(processedFolder, ediOutFile.getName()));
这是当我运行上面的代码会发生什么。但是,新创建的文件不会移动到文件夹“B”。
分析:
有一个在上面的代码中没有语法问题。 我试过移动文件的替代方法。即,将文件夹“A”中的文件读写到文件夹“B”,然后从文件夹“A”中删除该文件。新文件在文件夹'B'中创建,但文件不会从文件夹'B'中删除。 当我运行另一个试图移动文件的程序时,在执行上面的程序之后,它会起作用。也就是说,运行时对文件进行控制似乎存在问题。
请帮我解决。我浪费了整整一天的时间,试图找出解决方案:(
如果您使用Java 7+:http://docs.oracle.com/javase/tu torial /本质/ IO/move.html – assylias