黑马程序员技术交流社区

标题: 一道面试题.. [打印本页]

作者: wudigod12    时间: 2015-7-24 00:33
标题: 一道面试题..
将用户输入在控制台上的指定路径下所有的.txt文件复制到c盘下随意目录(你可以自己指定路径)并在复制后将.txt后缀名更改成.java后缀名


package test;

import java.io.BufferedReader;
import java.io.File;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.PrintWriter;

public class Test7 {
        public static void main(String[] args)throws IOException{
                BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
               
                String str = br.readLine();
               
                //源目录
                File dir = new File(str);
                //目标目录
                File dest = new File("c:\\hello");
                read(dir,dest);
        }
       
        public static void read(File dir,File dest) throws IOException{
                //判断目标目录是否存在,不存在则创建
                if(!dest.exists())
                        dest.mkdir();
                //判断目标目录是否是目录,不是则创建
                if(!dest.isDirectory())
                        dest.mkdir();
               
                File[] files = dir.listFiles();
                for(File file : files){
                        if(file.isDirectory())
                                //如果此File对象是目录,递归进入目录
                                read(file,dest);
                        else{
                                //判断是否是txt类型文件
                                if(file.getName().endsWith(".txt")){
                                        BufferedReader br = new BufferedReader(new FileReader(file));
                                        //将txt文件复制到目标目录, 并更改扩展名
                                        PrintWriter pw = new PrintWriter(new FileWriter(dest.getAbsolutePath() +File.separator + file.getName().replace(".txt", ".java")));
                                        String line = null;
                                        while((line=br.readLine()) != null){
                                                pw.println(line);
                                        }
                                        br.close();
                                        pw.close();
                                }
                        }
                }
        }
}



作者: 蔡锐    时间: 2015-7-24 08:46
学到了!
作者: 郁金香大公爵    时间: 2015-7-24 08:47
收到了,谢谢分享
作者: 飞飞飞丨    时间: 2015-7-24 18:16
谢谢分享
作者: Ruby    时间: 2015-7-24 19:23
感谢楼主分享
作者: 冯领峰    时间: 2016-3-22 13:44
我还以为很简单,原来想问题要想这么全
作者: 丿若恋灬如初    时间: 2016-3-22 15:24
评论后收藏,学习
作者: fighting2016    时间: 2016-3-22 17:41
谢楼主。。。。
作者: 604840337    时间: 2016-3-22 20:58
厉害 加油!!
作者: 兵蜂    时间: 2016-3-22 21:56
谢谢楼主,谢谢分享




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2