Java IO流之使用緩衝流讀寫及序列化

2021-08-15 07:22:57 字數 2370 閱讀 4573

使用緩衝流的好處是,能夠更高效的讀寫資訊,

原理是將資料先緩衝起來,然後一起寫入或者讀取出來。

bufferedwriter
// 寫入時使用 .newline(); 達到換行目的 此方法可以跨平台實現

public static void write() throws ioexception

bufferedreader
public

static

void

read() throws filenotfoundexception, ioexception

br.close();

}

緩衝字元流 複製檔案

public

static

void

main(string args) throws ioexception

br.close();

bw.close();

}

bufferedoutputstream
public

static

void

fun() throws filenotfoundexception, ioexception

bufferedinputstream
public

static

void

fun() throws filenotfoundexception, ioexception

}

建立抽象類來計算時間

abstract class testtime

// 子類要拋異常 父類必須有這異常

public

abstract

void

copyfile() throws ioexception;

}

"分別測試: "

"位元組流" 單位元組形式 複製檔案

陣列形式 複製檔案

"緩衝流" 單位元組形式 複製檔案

陣列形式 複製檔案

使用位元組流 以位元組形式 複製檔案

class

bytecopy1

extends

testtime

fis.close();

fos.close();

}} 使用位元組流 以陣列形式 複製檔案

class

bytecopy2

extends

testtime

fis.close();

fos.close();

}}

使用緩衝流 以位元組形式 複製檔案

class

mycopy

extends

testtime

bis.close();

bos.close();

}} 使用緩衝流 以陣列形式 複製檔案

class

mycopy2

extends

testtime

bis.close();

bos.close();

}}

測試後 發現緩衝流能大幅提公升效率

把物件寫進檔案中

objectoutputstream 序列化流

public

static

void

writeobject() throws filenotfoundexception, ioexception

從檔案中把物件讀取出來

objectinputstream 反序列化流

public

static

void

readobject() throws filenotfoundexception, ioexception, classnotfoundexception

作用: properties是集合中唯一乙個能和io流配合的類
讀取和寫入時引數

可以使字元流

也可以位元組流

public

static

void

fun()

}public

static

void

fun() throws filenotfoundexception, ioexception

public

static

void

fun() throws ioexception

java IO 位元組緩衝流

classname 位元組快取流 為了解決在寫入檔案操作時,頻繁的操作檔案所帶來的效能降低的問題 bufferedoutputstream 內部預設的快取大小時8kb,每次寫入時儲存到的快取中的byte陣列中,當陣列存滿 時,會把陣列中的資料寫入檔案,並且快取下標歸零 description tod...

java IO流 帶緩衝的字元流

bufferedreader的read 方法讀取字元時會一次讀取若干字元到緩衝區,然後逐個返回給程式,降低讀取檔案的次數,提高效率 bufferedwriter的write 方法寫出字元時會先寫到緩衝區,緩衝區寫滿時才會寫到檔案,降低寫檔案的次數,提高效率 bufferedreader br new...

Java I O (四)緩衝流類

存在著幾種讀取和寫入file的方法,但是通常,最簡便的方法如下所示 該 如下所示 try catch ioexception e1 這裡在afile上建立了乙個filewriter。緩衝編寫比一次只編寫出乙個字元有效。在編寫每個行 用 n符號手工結束 時,可以在bufferedwriter上呼叫fl...