import java.io.*;
public class TestDemo {
/**
* 功能:Java讀取txt文件的內容
* 步驟:
* 1:先獲得文件句柄
* 2:獲得文件句柄當做是輸入一個字節碼流,需要對這個輸入流進行讀取
* 3:讀取到輸入流後,需要讀取生成字節流
* 4:一行一行的輸出。readline()。
* 備註:需要考慮的是異常情況
* @param filePath
*/
public static void readTxtFile(String filePath) {
try {
String encoding = "utf-8";
//讀取路徑下的文件
File file = new File(filePath);
//判斷文件是否存在
if (file.isFile() && file.exists()) {
//建立一個輸入流對象read,考慮到編碼格式
InputStreamReader read = new InputStreamReader(new FileInputStream(file), encoding);
//建立一個對象,它把文件內容轉成計算機能讀懂的語言
BufferedReader bufferedReader = new BufferedReader(read);
String lineTxt = null;
StringBuffer strBuffer = new StringBuffer();
while ((lineTxt = bufferedReader.readLine()) != null) {
//將文件內容存到 字符串緩衝 中
strBuffer.append(lineTxt);
}
//轉換成字符串
String str = strBuffer.toString();
//讀取文件內容
System.out.println(str);
read.close();
} else {
System.out.println("找不到指定的文件");
}
} catch (Exception e) {
System.out.println("讀取文件內容出錯");
e.printStackTrace();
}
}
/**
* @Author
* @Description 文件寫入
* @Date
* @param filePath 需要寫入的文件路徑
* @return void
**/
public static void writeTxtFile(String filePath){
/* 寫入Txt文件 */
// 相對路徑,如果沒有則要建立一個新的output.txt文件
File writename = new File(filePath);
try {
//FileWriter ()的第二個參數爲 true 時,表示在文件末尾增加內容 ,不寫第二個參數時, 表示覆蓋原文件內容
BufferedWriter out = new BufferedWriter(new FileWriter(writename,true));
// \r\n即爲換行
out.write("我會寫入文件啦\r\n");
out.flush(); // 把緩存區內容壓入文件
out.close(); // 最後記得關閉文件
} catch (IOException e) {
e.printStackTrace();
}
}
//編寫測試
public static void main(String argv[]){
String filePath = "I:\\cktest\\test.txt";
readTxtFile(filePath);
writeTxtFile(filePath);
}
}
``
java中文件的讀取和寫入
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.