写了个小程序:复制单级文件夹中的所有.java文件到指定目录下:loveliness:
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.File;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.FilenameFilter;
import java.io.IOException;
public class CopyJavaFile {
public static void main(String[] args) throws IOException {
copyFiles(new File("d:\\dir"), new File("e:\\dir"));
}
/**
* 复制单级文件夹中的所有.java文件
*
* @param srcDir
* 源文件夹目录
* @param destDir
* 目的文件夹目录
* @throws IOException
*/
public static void copyFiles(File srcDir, File destDir) throws IOException {
File[] files = srcDir.listFiles(new FilenameFilter() {
@Override
// 过滤文件,让.java结尾的文件进入文件数组中
public boolean accept(File dir, String name) {
return new File(dir, name).isFile() && name.endsWith(".java");
}
});
// 判断文件数组长度是否为空或者数组是否指向空指针
if (files == null || files.length == 0) {
return;
}
if (!destDir.exists()) {
destDir.mkdirs();
}
// 遍历文件数组
for (File file : files) {
// 复制文件
BufferedReader br = new BufferedReader(new FileReader(file));
BufferedWriter bw = new BufferedWriter(new FileWriter(new File(
destDir, file.getName())));
String line = null;
while ((line = br.readLine()) != null) {
bw.write(line);
bw.newLine();
bw.flush();
}
bw.close();
br.close();
}
}
}
|