教育行業(yè)A股IPO第一股(股票代碼 003032)

全國咨詢/投訴熱線:400-618-4000

什么是IO流?怎樣區(qū)分不同種類的IO流?

更新時(shí)間:2021年07月30日11時(shí)45分 來源:傳智教育 瀏覽次數(shù):

好口碑IT培訓(xùn)

I/O(Input/Output)流,即輸入/輸出流,是Java中實(shí)現(xiàn)輸入/輸出的基礎(chǔ),它可以方便地實(shí)現(xiàn)數(shù)據(jù)的輸入/輸出操作。

I/O流有很多種,按照不同的分類方式,可以分為以下三類:

1.字節(jié)流和字符流

根據(jù)流操作的數(shù)據(jù)單位的不同,可以分為字節(jié)流和字符流。字節(jié)流以字節(jié)為單位進(jìn)行數(shù)據(jù)的讀寫,每次讀寫一個(gè)或多個(gè)字節(jié)數(shù)據(jù);字符流以字符為單位進(jìn)行數(shù)據(jù)的讀寫,每次讀寫一個(gè)或者多個(gè)字符數(shù)據(jù)。

2.輸入流和輸出流

根據(jù)流傳輸方向的不同,又可分為輸入流和輸出流。其中輸入流只能從流中讀取數(shù)據(jù),而不能向其寫入數(shù)據(jù);輸出流只能向流中寫入數(shù)據(jù),而不能從中讀取數(shù)據(jù)。

3.節(jié)點(diǎn)流和處理流

根據(jù)流的功能不同,可以分為節(jié)點(diǎn)流和處理流。其中節(jié)點(diǎn)流也被稱為低級流,是指可以從一個(gè)特定的I/O設(shè)備(如磁盤)讀寫數(shù)據(jù)的流,它只能直接連接數(shù)據(jù)源,進(jìn)行數(shù)據(jù)的讀寫操作;處理流也被稱為高級流,它用于對一個(gè)已存在的節(jié)點(diǎn)流進(jìn)行連接和封裝,通過封裝后的流來實(shí)現(xiàn)流的讀寫能力。當(dāng)使用處理流時(shí),程序不會(huì)直接連接到實(shí)際的數(shù)據(jù)源,而是連接在已存在的流之上。

Java中的I/O流主要定義在java.io包中,該包下定義了很多類,其中有4個(gè)類為流的頂級類,分別為InputStream和OutputStream,Reader和Writer。其中InputStream和OutPutStream是字節(jié)流,而Reader和Writer是字符流;InputStream和Reader是輸入流,而OutPutStream和Writer是輸出流。I/O流頂級類的分類如圖1所示。

 I/O流的頂層類

圖1 I/O流的頂層類



猜你喜歡:

IO流、字節(jié)流和字符流詳細(xì)介紹

什么是字節(jié)碼?字節(jié)碼擴(kuò)展名是什么?

什么是字節(jié)流?字節(jié)流輸入輸出數(shù)據(jù)的常用方法是什么?

傳智教育java開發(fā)課程

0 分享到:
和我們在線交談!