功能说明:
遍历指定文件夹src目录下,所有的文件夹下的子文件, 找到java类型的文件,统一复制到目标destForder文件夹目录。
代码实现如下:
- /**
- * ClassName:CopyFileDemo2
- * Function: 遍历指定文件夹src目录下,所有的文件夹下的子文件,
- * 找到.java文件,统一复制到目标destForder文件夹目录。
- * Date: 2015-1-12 下午1:05:31 <br/>
- * @author Bowen
- * @version
- * @since JDK 1.6
- * @see
- */
- import java.io.BufferedReader;
- import java.io.BufferedWriter;
- import java.io.File;
- import java.io.FileOutputStream;
- import java.io.FileReader;
- import java.io.FileWriter;
- import java.io.IOException;
- import java.io.OutputStreamWriter;
- public class CopyFileDemo2 {
- public static void main(String[] args) throws IOException {
- File srcForder = new File("D:\\workspace\\exam");
- File destForder = new File("c:\\test\\");
- isFile(srcForder, destForder);
- }
- private static void isFile(File srcForder, File destForder)
- throws IOException {
- File[] file = srcForder.listFiles();
- for (File srcFile : file) {
- // 如果对象为文件夹,则调用自身查找目录下文件
- if (srcFile.isDirectory()) {
- isFile(srcFile, destForder);
- } else {
- // 如果对象为文件,看是否为java类型的源文件如果是拷贝文件到指定目录
- if (srcFile.getName().endsWith(".java")) {
- File destFile = new File(destForder, srcFile.getName());
- copyFile(srcFile, destFile);
- }
- }
- }
- }
- private static void copyFile(File srcFile, File destFile)
- throws IOException {
- BufferedReader br = new BufferedReader(new FileReader(srcFile));
- BufferedWriter bw =
- // new BufferedWriter(new FileWriter(destFile)) ;
- new BufferedWriter(new OutputStreamWriter(new FileOutputStream(destFile), "UTF-8"));
-
- // 当读到-1时说明已经读完文件
- // 设置一个文件缓冲区,一次读1024个字符,再进行输出
- // wihile最后一次运行取到文件内部长度进行输出
- int lenth = 0;
- char[] buff = new char[1024];
- while ((lenth = br.read(buff)) != -1) {
- bw.write(buff,0,lenth);
- }
- /* String line = null;
- while ((line = br.readLine()) != null) {
- bw.write(line);
- bw.newLine();
- bw.flush();
- }*/
- br.close();
- bw.close();
- }
- }
复制代码
|