- 相關(guān)推薦
JAVA IO操作知識匯總
Java的核心庫java.io提供了全面的IO接口。包括:文件讀寫(xiě)、標準設備輸出等。Java中IO是以流為基礎進(jìn)行輸入輸出的,所有數據被串行化寫(xiě)入輸出流,或者從輸入流讀入。下面YJBYS小編為大家整理了關(guān)于JAVA IO操作知識匯總的文章,希望對你有所幫助。
一、流的概念
流是字節序列的抽象概念。流和文件的差別:文件是數據的靜態(tài)存儲形式,而流是指數據傳輸時(shí)的形態(tài)。文件只是流的操作對象之一。流按其操作的對象不同可以分為文件流、網(wǎng)絡(luò )流、內存流、磁帶流等。Java流類(lèi)可分為兩個(gè)大類(lèi):節點(diǎn)流類(lèi)和過(guò)濾流類(lèi)(也叫處理流類(lèi))
1、節點(diǎn)流類(lèi):用于直接操作目標設備所對應的流類(lèi)。節點(diǎn)流類(lèi)所對應的IO源或目標稱(chēng)為流節點(diǎn)。比如我們用一個(gè)類(lèi)和一個(gè)文件或網(wǎng)絡(luò )相關(guān)聯(lián),那么這個(gè)類(lèi)就叫做節點(diǎn)流類(lèi),這個(gè)文件或網(wǎng)絡(luò )就叫做流的節點(diǎn)。
二、InputStream和OutputStream類(lèi)
1、InputStream類(lèi):程序可以從中連續讀取字節的對象叫輸入流,在Java中,用InputStream類(lèi)來(lái)描述所有輸入流的抽象概念。這個(gè)類(lèi)是抽象類(lèi)。
2、OutputStream類(lèi):程序可以向其連續寫(xiě)入字節的對象叫輸出流,在Java中,用OutputStream類(lèi)來(lái)描述所有輸出流的抽象概念。這個(gè)類(lèi)也是抽象類(lèi)。
三、FileInputStream和FileOutputStream類(lèi)
1、這兩個(gè)類(lèi)分別用來(lái)創(chuàng )建磁盤(pán)文件的輸入流和輸出流對象,通過(guò)他們的構造函數來(lái)指定文件路徑和文件名。
2、有兩種方法創(chuàng )建FileInputStream
(1)、FileInputStream inFirst = new FileInputStream("test.txt");
(2)、File f = new File("test.txt");
FileInputStream inSecond = new FileInputStream(f);
四、Reader和Writer類(lèi)
1、上面的幾個(gè)類(lèi),他們在讀取或寫(xiě)入的時(shí)候,都是進(jìn)行字節操作,要顯示出來(lái)還要進(jìn)行字符串轉換。
2、用Reader和Writer類(lèi)就可以直接進(jìn)行字符串讀取,簡(jiǎn)化了字符串的輸入輸出編程。但他們都是抽象類(lèi),用他們的子類(lèi)FileReader、FileWriter就可以直接使用。
五、PipedInputStream和PipedOutputStream類(lèi)
PipedInputStream和PipedOutputStream類(lèi)用于在應用程序中創(chuàng )建管道通信。一般用在進(jìn)程間通信。
六、PipedWriter和PipedReader類(lèi)
這兩個(gè)類(lèi)用于在管道中的字符串通信。
七、ByteArrayInputStream和ByteArrayOutputStream類(lèi)
ByteArrayInputStream和ByteArrayOutputStream,用于以IO流的方式來(lái)完成對字節數組內容的讀寫(xiě),來(lái)支持類(lèi)似內存虛擬文件或者內存映像文件的功能。
【JAVA IO操作知識】相關(guān)文章:
Java入門(mén)基礎知識:Java IO(輸入/輸出)09-23
sun認證考試:Java.io的使用08-23
Linux系統基礎知識:IO調度07-26
Java數組操作方法大全08-22
Java的基礎知識07-27
Java代碼的基本知識10-26
Java基礎知識詳解09-02
Java知識點(diǎn)歸納08-16
2016年java數組操作方法大全06-19