A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始


编写程序,将指定目录下所有的.java文件拷贝到另一个目的中,将扩展名改为.txt。
public static void main(String[] args) throws Exception {
                copyFile(System.getProperty("user.dir")+"\\myfile", System.getProperty("user.dir")+"\\mycopyfile");
               
        }
        public static void copyFile(String filePath,String copyPath){
                File f=new File(filePath);
                File[] farr=f.listFiles();
               
                for (File file : farr) {
                        if(file.isDirectory()){
                                copyFile(file.getAbsolutePath(), copyPath);
                        }
                        else{
                                if(file.getName().endsWith(".java"))
                                {
                                        BufferedReader br=null;
                                        FileWriter fWriter=null;
                                        try {
                                                FileReader fReader=new FileReader(file);
                                                File fcopy=new File(copyPath+"\\"+file.getName().replace(".java",".txt"));
                                                if(!fcopy.getParentFile().exists())
                                                        fcopy.mkdirs();
                                                int index=0;
                                                String sName=fcopy.getName();
                                                while(fcopy.exists()){
                                                        fcopy=new File(fcopy.getParent()+"\\"+sName.replace(".txt", index++ +".txt"));
                                                }
                                                index=0;
                                                if(!fcopy.exists())
                                                        fcopy.createNewFile();
                                                br=new BufferedReader(fReader);
                                                String s1="";
                                                while((s1=br.readLine())!=null){
                                                        fWriter.write(s1);
                                                }
                                        } catch (IOException e) {
                                                e.printStackTrace();
                                        }
                                        finally{
                                                try {
                                                        if(br!=null)
                                                                br.close();
                                                        if(fWriter!=null)
                                                                fWriter.close();
                                                } catch (IOException e2) {
                                                        e2.printStackTrace();
                                                }
                                        }
                                }
                        }
                }
               
        }

0 个回复

您需要登录后才可以回帖 登录 | 加入黑马