JAVA 中的文件讀取
阿新 • • 發佈:2018-08-07
分隔符 ade write utf8 問題 提高 byte 使用 buffere Writer 類擴展而來,文本寫入的通用緩沖方式,newLine 使用平臺自己的行分隔符,將文本寫入【字符輸出流】,緩沖各個字符,從而提供單個字符、數組和字符串的高效寫入。
輸出文本行
InputStream 能從來源處讀取一個一個字節(Byte),所以他是最低級的。
進化過程:
FileInputStream(byte) --> InputStreamReader(字符) --> BufferedReader(行)
InputStreamReader 與 FileReader 的區別:
InputStreamReader 是用來讀取原始字節流,可指定編碼格式
FileReader 是讀取字符流,使用系統默認的編碼格式,當讀取中文文件是易出現亂碼問題。
1. InputStream / OutputStream
處理字節流
抽象類:所有輸入、輸出(內存)類的超類,一般使用 FileInputStream / FileOutputStream
輸出字符 utf8 編碼:如 4431
2. InputStreamReader / OutputStreamWriter
處理字符流
抽象類
InputStreamReader:字節流通向字符流的橋梁,將字節流轉換為字符流
OutputStreamWriter:字符流通向字節流的橋梁,將字符流轉換為字節流
輸出字符:一個個字符,如:a 或者 陳(漢字)
3. BufferedReader / BufferedWriter
Reader 類擴展,文本讀取的通用緩沖方式,readLine 方法讀取一個文本行,從【字符輸入流】讀取文本,緩沖各個字符,以提高字符、數組和行的讀取效率。
輸出文本行
InputStream 能從來源處讀取一個一個字節(Byte),所以他是最低級的。
進化過程:
FileInputStream(byte) --> InputStreamReader(字符) --> BufferedReader(行)
InputStreamReader 與 FileReader 的區別:
InputStreamReader 是用來讀取原始字節流,可指定編碼格式
FileReader 是讀取字符流,使用系統默認的編碼格式,當讀取中文文件是易出現亂碼問題。
JAVA 中的文件讀取