我有一个文件夹,其中有一个.dat文件,一个是.zip文件,我必须将.zip文件移动到另一个目录
我有两个文件夹,一个是
1) c:\source folder --> having two files abc.dat and other is abc.zip
2) c:\destination ---> in which zip shpould be get copied
请告知如何实现这一点我现在所做的就是......
File directory = new File(sourceFolder);
File[] listFiles = (mcrpFilePath).listFiles();
for (File f : listFiles) {
if (f.isFile()) { // ?? here logic to pick up the zip file
//logic to move the zip file to other directory
}
}
答案 0 :(得分:2)
重命名此抽象路径名表示的文件 此方法行为的许多方面本质上依赖于平台:重命名操作可能无法将文件从一个文件系统移动到另一个文件系统,它可能不是原子的,如果具有目标抽象路径名的文件可能不会成功已经存在。应始终检查返回值以确保重命名操作成功。
这是Example
或者你可以使用Files#move(如果你使用的是java 7)
将文件移动或重命名为目标文件。
答案 1 :(得分:1)
就像在File类中使用方法renameTo()一样简单。
public boolean renameTo(File dest);
重命名此抽象路径名表示的文件。
获取file
完整路径并将其重命名为所需位置。
并利用通过该方法返回的boolean
来了解天气是否已成功移动。
答案 2 :(得分:1)
用于检测您的zip文件:
if(f.getName.equals("abc.zip"))
或所有zip文件:
if(f.getName.endsWith(".zip"))
使用正则表达式:
if(f.getName.matches("abc*\\.zip"))
f.renameTo(new File("C:\dest\abc.zip");
new File("C:\src\abc.zip").renameTo("C:\dest\abc.zip");
根据需要捕获异常。
答案 3 :(得分:1)
使用java.io.File及其方法获取.zip文件列表并移动它们(Tutorial - Moving a File or Directory)。
import static java.nio.file.StandardCopyOption.*;
...
Files.move(source, target, REPLACE_EXISTING);