摘要:字節(jié)緩沖輸入流繼承自父類的成員方法從輸入流中讀取數(shù)據(jù)的下一個字節(jié)。從輸入流中讀取一定數(shù)量的字節(jié),并將其存儲在緩沖區(qū)數(shù)組中。關閉此輸入流并釋放與該流關聯(lián)的所有系統(tǒng)資源。創(chuàng)建具有指定緩沖區(qū)大小的并保存其參數(shù),即輸入流,以便將來使用。
package com.itheima.demo01.BufferedStream;
import java.io.BufferedInputStream;
import java.io.FileInputStream;
import java.io.IOException;
/*
java.io.BufferedInputStream extends InputStream BufferedInputStream:字節(jié)緩沖輸入流 繼承自父類的成員方法: int read()從輸入流中讀取數(shù)據(jù)的下一個字節(jié)。 int read(byte[] b) 從輸入流中讀取一定數(shù)量的字節(jié),并將其存儲在緩沖區(qū)數(shù)組 b 中。 void close() 關閉此輸入流并釋放與該流關聯(lián)的所有系統(tǒng)資源。 構造方法: BufferedInputStream(InputStream in) 創(chuàng)建一個 BufferedInputStream 并保存其參數(shù),即輸入流 in,以便將來使用。 BufferedInputStream(InputStream in, int size) 創(chuàng)建具有指定緩沖區(qū)大小的 BufferedInputStream 并保存其參數(shù),即輸入流 in,以便將來使用。 參數(shù): InputStream in:字節(jié)輸入流 我們可以傳遞FileInputStream,緩沖流會給FileInputStream增加一個緩沖區(qū),提高FileInputStream的讀取效率 int size:指定緩沖流內部緩沖區(qū)的大小,不指定默認 使用步驟(重點): 1.創(chuàng)建FileInputStream對象,構造方法中綁定要讀取的數(shù)據(jù)源 2.創(chuàng)建BufferedInputStream對象,構造方法中傳遞FileInputStream對象,提高FileInputStream對象的讀取效率 3.使用BufferedInputStream對象中的方法read,讀取文件 4.釋放資源
*/
public class Demo02BufferedInputStream {
public static void main(String[] args) throws IOException { //1.創(chuàng)建FileInputStream對象,構造方法中綁定要讀取的數(shù)據(jù)源 FileInputStream fis = new FileInputStream("10_IOa.txt"); //2.創(chuàng)建BufferedInputStream對象,構造方法中傳遞FileInputStream對象,提高FileInputStream對象的讀取效率 BufferedInputStream bis = new BufferedInputStream(fis); //3.使用BufferedInputStream對象中的方法read,讀取文件 //int read()從輸入流中讀取數(shù)據(jù)的下一個字節(jié)。 /*int len = 0;//記錄每次讀取到的字節(jié) while((len = bis.read())!=-1){ System.out.println(len); }*/ //int read(byte[] b) 從輸入流中讀取一定數(shù)量的字節(jié),并將其存儲在緩沖區(qū)數(shù)組 b 中。 byte[] bytes =new byte[1024];//存儲每次讀取的數(shù)據(jù) int len = 0; //記錄每次讀取的有效字節(jié)個數(shù) while((len = bis.read(bytes))!=-1){ System.out.println(new String(bytes,0,len)); } //4.釋放資源 bis.close(); }
}
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉載請注明本文地址:http://www.ezyhdfw.cn/yun/76245.html
摘要:字符轉換流原理字節(jié)流編碼表。和作為子類,僅作為操作字符文件的便捷類存在。源目的先根據(jù)需求明確要讀,還是要寫。屏幕網絡完全可以明確具體要使用哪個流對象。明確四是否需要額外功能呢額外功能轉換嗎轉換流。高效嗎緩沖區(qū)對象。 01轉換流概述 * A: 轉換流概述 * a: 轉換流概述 * OutputStreamWriter 是字符流通向字節(jié)流的橋梁:可使用指定的字符編碼...
摘要:流按操作類型分為兩種字節(jié)流字節(jié)流可以操作任何數(shù)據(jù)因為在計算機中任何數(shù)據(jù)都是以字節(jié)的形式存儲的字符流字符流只能操作純字符數(shù)據(jù),比較方便。 1_IO流概述及其分類 1.概念 IO流用來處理設備之間的數(shù)據(jù)傳輸 Java對數(shù)據(jù)的操作是通過流的方式 Java用于操作流的類都在IO包中 流按流向分為兩種:輸入流,輸出流。 流按操作類型分為兩種: 字節(jié)流 : 字節(jié)流可以操作任何數(shù)據(jù),因為在...
摘要:文件復制練習一讀一寫明確數(shù)據(jù)源數(shù)據(jù)的目的地文件復制的步驟創(chuàng)建字節(jié)緩沖輸入流對象構造方法中傳遞字節(jié)輸入流創(chuàng)建字節(jié)緩沖輸出流對象構造方法中傳遞字節(jié)輸出流使用字節(jié)緩沖輸入流對象中的方法讀取文件使用字節(jié)緩沖輸出流中的方法把讀取的數(shù)據(jù)寫入到內部緩沖區(qū) package com.itheima.demo02.CopyFile; import java.io.*; /* 文件復制練習:一讀一寫 明確...
摘要:摘要本文大多技術圍繞調整磁盤文件但是有些內容也同樣適合網絡和窗口輸出。語言采取兩種截然不同的磁盤文件結構。一個是基于字節(jié)流,另一個是字符序列。但是在有些情況下軟件高速緩存能被用于加速。串行化串行化以標準格式將任意的數(shù)據(jù)結構轉換為字節(jié)流。 摘要 本文大多技術圍繞調整磁盤文件 I/O,但是有些內容也同樣適合網絡 I/O 和窗口輸出。第一部分技術討論底層的I/O問題,然后討論諸如壓縮,格式化...
摘要:除非文件用自帶的記事本打開我們能夠讀懂,才采用字符流,否則建議使用字節(jié)流。 第四階段 IO IO流 前言: 前面的學習我們只能夠在已有的一定封閉范圍內進行一些操作,但是這顯然是無趣的,也是不支持我們實現(xiàn)一些復雜的需求,所以Java提供IO流這樣一種概念,方便我們對數(shù)據(jù)進行操作 而使用IO流我們可以實現(xiàn)一些強大的功能,例如針對文件的移動復制等操作,又或者程序與外部文件之間的數(shù)據(jù)存儲或者讀...
閱讀 1427·2023-04-25 23:47
閱讀 985·2021-11-23 09:51
閱讀 4728·2021-09-26 10:17
閱讀 3796·2021-09-10 11:19
閱讀 3316·2021-09-06 15:10
閱讀 3603·2019-08-30 12:49
閱讀 2500·2019-08-29 13:20
閱讀 1789·2019-08-28 18:14