编写程序,将指定目录下所有的.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(); } } } } } }
|