1. 程式人生 > >java每日一練-------檔案讀取

java每日一練-------檔案讀取

import java.io.*;
import java.util.ArrayList;
import java.util.List;

public class IoOperateor {
    public static List<File> total_files = new ArrayList<File>();
    public static void main(String []args) throws IOException {
        String base_dir = "你的目錄;
        dir_search(new File(base_dir));
        for(int i=0; i<total_files.size(); i++) {
            File file = (File)total_files.get(i);
            file_read(file);
        }
    }
    public static void file_read(File f) throws IOException {
        //FileInputStream: 位元組流處理    InputStreamReader: 字元流處理[可指定編碼]    
        //BufferedReader: 字元流處理[可使用readLine()讀取每行]
        BufferedReader in = new BufferedReader(new InputStreamReader(new FileInputStream(f),"utf-8"));
        StringBuffer contents = new StringBuffer();
        while(true) {
            String temp_content = in.readLine();
            if(temp_content!=null) {
                contents.append(temp_content);
                System.out.println(temp_content);
            }else {
                break;
            }
        }
        in.close();
    }
    
    public static void dir_search(File f) {
        File []files = f.listFiles();
        for(File file: files) {
            if(file.isDirectory()) {
                dir_search(file);
            }
            else {
                total_files.add(file);
            }
        }
    }
}