摘要:是字節流通向字符流的橋梁它使用指定的讀取字節并將其解碼為字符。解碼把看不懂的變成能看懂的繼承自父類的共性成員方法讀取單個字符并返回。一次讀取多個字符將字符讀入數組。關閉該流并釋放與之關聯的所有資源。構造方法創建一個使用默認字符集的。
package com.itheima.demo03.ReverseStream;
import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStreamReader;
/*
java.io.InputStreamReader extends Reader InputStreamReader:是字節流通向字符流的橋梁:它使用指定的 charset 讀取字節并將其解碼為字符。(解碼:把看不懂的變成能看懂的) 繼承自父類的共性成員方法: int read() 讀取單個字符并返回。 int read(char[] cbuf)一次讀取多個字符,將字符讀入數組。 void close() 關閉該流并釋放與之關聯的所有資源。 構造方法: InputStreamReader(InputStream in) 創建一個使用默認字符集的 InputStreamReader。 InputStreamReader(InputStream in, String charsetName) 創建使用指定字符集的 InputStreamReader。 參數: InputStream in:字節輸入流,用來讀取文件中保存的字節 String charsetName:指定的編碼表名稱,不區分大小寫,可以是utf-8/UTF-8,gbk/GBK,...不指定默認使用UTF-8 使用步驟: 1.創建InputStreamReader對象,構造方法中傳遞字節輸入流和指定的編碼表名稱 2.使用InputStreamReader對象中的方法read讀取文件 3.釋放資源 注意事項: 構造方法中指定的編碼表名稱要和文件的編碼相同,否則會發生亂碼
*/
public class Demo03InputStreamReader {
public static void main(String[] args) throws IOException { //read_utf_8(); read_gbk(); } /* 使用InputStreamReader讀取GBK格式的文件 */ private static void read_gbk() throws IOException { //1.創建InputStreamReader對象,構造方法中傳遞字節輸入流和指定的編碼表名稱 //InputStreamReader isr = new InputStreamReader(new FileInputStream("10_IOgbk.txt"),"UTF-8");//??? InputStreamReader isr = new InputStreamReader(new FileInputStream("10_IOgbk.txt"),"GBK");//你好 //2.使用InputStreamReader對象中的方法read讀取文件 int len = 0; while((len = isr.read())!=-1){ System.out.println((char)len); } //3.釋放資源 isr.close(); } /* 使用InputStreamReader讀取UTF-8格式的文件 */ private static void read_utf_8() throws IOException { //1.創建InputStreamReader對象,構造方法中傳遞字節輸入流和指定的編碼表名稱 //InputStreamReader isr = new InputStreamReader(new FileInputStream("10_IOutf_8.txt"),"UTF-8"); InputStreamReader isr = new InputStreamReader(new FileInputStream("10_IOutf_8.txt"));//不指定默認使用UTF-8 //2.使用InputStreamReader對象中的方法read讀取文件 int len = 0; while((len = isr.read())!=-1){ System.out.println((char)len); } //3.釋放資源 isr.close(); }
}
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/76258.html
摘要:是字符流通向字節流的橋梁可使用指定的將要寫入流中的字符編碼成字節。編碼把能看懂的變成看不懂繼續自父類的共性成員方法寫入單個字符。刷新該流的緩沖。關閉此流,但要先刷新它。構造方法創建使用默認字符編碼的。 package com.itheima.demo03.ReverseStream; import java.io.FileOutputStream;import java.io.IOEx...
摘要:字符轉換流原理字節流編碼表。和作為子類,僅作為操作字符文件的便捷類存在。源目的先根據需求明確要讀,還是要寫。屏幕網絡完全可以明確具體要使用哪個流對象。明確四是否需要額外功能呢額外功能轉換嗎轉換流。高效嗎緩沖區對象。 01轉換流概述 * A: 轉換流概述 * a: 轉換流概述 * OutputStreamWriter 是字符流通向字節流的橋梁:可使用指定的字符編碼...
摘要:字符流字符流是什么字符流是可以直接讀寫字符的流字符流讀取字符就要先讀取到字節數據然后轉為字符如果要寫出字符需要把字符轉為字節再寫出類的方法可以按照字符大小讀取通過項目默認的碼表一次讀取一個字符賦值給將讀到的字符強轉后打印字符流類的方法可以 1_字符流FileReader 1.字符流是什么 字符流是可以直接讀寫字符的IO流 字符流讀取字符, 就要先讀取到字節數據, 然后轉為字符. ...
package com.itheima.demo03.ReverseStream; import java.io.*; /* 練習:轉換文件編碼 將GBK編碼的文本文件,轉換為UTF-8編碼的文本文件。 分析: 1.創建InputStreamReader對象,構造方法中傳遞字節輸入流和指定的編碼表名稱GBK 2.創建OutputStreamWriter對象,構造方法中傳遞...
摘要:知識點總結轉換流知識點總結是的子類,將一個字符流的輸出對象變為字節流的輸出對象。將字節輸出流轉為字符輸出流字節流轉為字符流蘋果將字節輸入流轉為字符輸入流內容是 Java知識點總結(JavaIO-轉換流) @(Java知識點總結)[Java, JavaIO] [toc] showImg(https://segmentfault.com/img/bV82dQ?w=849&h=226); O...
閱讀 1770·2021-10-11 10:59
閱讀 2412·2021-09-30 09:53
閱讀 1770·2021-09-22 15:28
閱讀 2801·2019-08-29 15:29
閱讀 1563·2019-08-29 13:53
閱讀 3212·2019-08-29 12:34
閱讀 2861·2019-08-26 10:16
閱讀 2668·2019-08-23 15:16