FileReader 讀 2016.9.28

import java.io.FileNotFoundException;

import java.io.FileReader;

import java.io.FileWriter;

import java.io.IOException;

public class FileReaderDemo {

public static void main(String[] args) {

// TODO Auto-generated method stub

FileReader fr = null;

//創建一個文件讀取流對象,和指定名稱的文件相關聯

//要保證該文件是已經存在的,如果不存在就會大聲fileNotFoundException異常

try {

fr = new FileReader("demo.txt");

int ch = 0;

try {

// while (true) {

// ch = fr.read();

// if(ch == -1)

// break;

// System.out.println("ch+"+(char)ch);

// }

//第一種方式 單個讀

// do {

// ch = fr.read();

// System.out.println("ch+"+(char)ch);

// } while (ch!=-1);

//第二種方式? 讀取char[]

//該read(char[])返回值是讀取到字符的個數

char [] buf = new char[3]; //一般定義1024的整數倍

int num = 0;

while ((num =fr.read(buf)) != -1 ) {

System.out.println("num"+num);

System.out.println(new String(buf,0,num));//讀幾個 就取幾個

}

} catch (IOException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

} catch (FileNotFoundException e) {

// TODO Auto-generated catch block

e.printStackTrace();

} finally {

if(fr!=null)

try {

fr.close();

} catch (IOException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

}

// FileWriter fw = null;

// try {

// fw = new FileWriter("demo.txt");

// fw.write("aaddddgsgcxx");

// } catch (IOException e) {

// // TODO Auto-generated catch block

// e.printStackTrace();

// } finally {

// if(fw!=null)

// try {

// fw.close();

// } catch (IOException e2) {

// // TODO: handle exception

// e2.printStackTrace();

// }

// }

}

}


(3)打印 .java文件

//打印? .java文件

FileReader fr = null;

try {

fr = new FileReader("src/FileReaderDemo.java");

char [] buf = new char[1024];

int num = 0;

try {

while ((num=fr.read(buf))!=-1) {//-1是最后一個標志

System.out.println(new String(buf, 0, num));

}

} catch (IOException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

} catch (FileNotFoundException e1) {

// TODO Auto-generated catch block

e1.printStackTrace();

System.out.println("找不到文件");

} finally {

if (fr!=null)

try {

fr.close();

} catch (IOException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

}

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容