将d:\java目录下的所有.java文件复制到d:\jad 目录下,并将原来文件的扩展名从.java 改为.jad
生活随笔
收集整理的這篇文章主要介紹了
将d:\java目录下的所有.java文件复制到d:\jad 目录下,并将原来文件的扩展名从.java 改为.jad
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
package com;import java.io.*;
import java.util.ArrayList;
import java.util.List;
/*
編寫一個程序,將d:\java目錄下的所有.java文件復制到d:\jad
目錄下,并將原來文件的擴展名從.java 改為.jad。...*/
public class Demo02_copy {static List<String> list = new ArrayList<>();public static void main(String[] args) {findAll(new File("d:/java"));//取list中的所有文件名for (String s: list) {File srcFile = new File(s);String str = srcFile.getAbsolutePath();//將文件名的后綴改為jad.File tarFile = new File(str.replaceAll("\\.java$","jad"));//拷貝文件【注】如果在findAll()下沒有創建所需要的目錄,則會報出找不到路徑copy(srcFile,tarFile);}}//使用緩沖字節流拷貝文件public static void copy(File srcFile,File tarFile){try {BufferedInputStream bis = new BufferedInputStream(new FileInputStream(srcFile));BufferedOutputStream bos = new BufferedOutputStream(new FileOutputStream(tarFile));int len = 0;byte[] bytes = new byte[1024];while ((len = bis.read(bytes)) != -1){bos.write(bytes,0,len);}bos.close();bis.close();} catch (IOException e) {e.printStackTrace();}}//定義方法求出一個文件目錄下所有的.java文件public static void oneFileEnd(File oneFile){File[] files = oneFile.listFiles(new FilenameFilter() {@Overridepublic boolean accept(File dir, String name) {return name.endsWith(".java");}});//將查詢到的文件存儲到全局變量list中for (File f: files){list.add(f.getAbsolutePath());System.out.println(f.getAbsolutePath());}}//找出源文件目錄下所有的.java文件public static void findAll(File srcFile){if (srcFile.exists() && srcFile.isDirectory()){//如果文件存在且為目錄則調用oneFileEnd。oneFileEnd(srcFile);File[] files = srcFile.listFiles();//判斷這個文件目錄下的所有文件for (File f: files) {if (f.isDirectory()){//如果文件是目錄,則將其目錄java替換成jadFile dir = new File(f.getAbsolutePath().replace("java","jad"));//創建這個目錄,以便下面的拷貝dir.mkdirs();//遞歸findAll(f);}}}}
}
?
總結
以上是生活随笔為你收集整理的将d:\java目录下的所有.java文件复制到d:\jad 目录下,并将原来文件的扩展名从.java 改为.jad的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 将一组数进行排序后,也输出他与之对应的序
- 下一篇: 截取字符串,但要保证汉字不被截取半个