鍍金池/ 教程/ Java/ Java輸入/輸出教程
Java文件屬性
Java FilePermission示例
Java Externalizable實例
Java文件操作
Java文件鎖
Java文件系統(tǒng)
Java異步I/O
Java Reader/Writer
Java File實例
Java FileReader示例
Java控制臺
Java文件所有者權(quán)限
Java通道
Java ByteArrayOutputStream示例
BufferedOutputStream示例
Java FileInputStream示例
Java DataInputStream
Java BufferedInputStream
Java Jar Manifest
Java Console類示例
BufferedWriter示例
Java輸入/輸出教程
Java對象序列化
Java文件教程
Java DataInputStream類型
Java Zip字節(jié)數(shù)組
Java FileWriter示例
FileOutputStream示例
Java PrintStream
Java Scanner類
BufferedInputStream示例
Java字符集
ByteArrayInputStream示例
Java路徑操作
Java DataOutputStream
Java符號鏈接
Java FilterWriter示例
Java Jar API
BufferedReader實例
Java Pipe(管道)
Java jar文件
Java CharArrayReader示例
Java CharArrayWriter示例
Java PushbackInputStream
Java FilterReader示例
Java zip文件
Java InputStream
Java標準輸入/輸出/錯誤流
Java文件內(nèi)容和讀寫
Java FilterInputStream示例
Java內(nèi)存通道
Java路徑
Java令牌和字符串拆分
Java隨機訪問文件
Java文件樹
Java緩沖區(qū)讀寫
Java FileOutputStream
Java目錄事件
Java FilterOutputStream示例
Java DataOutputStream實例
FileDescriptor示例

Java輸入/輸出教程

Java輸入/輸出(I/O)處理從源讀取數(shù)據(jù)并將數(shù)據(jù)寫入目標。通常,讀取存儲在文件中的數(shù)據(jù)或使用I/O將數(shù)據(jù)寫入到文件中。

java.iojava.nio包中包含處理輸入/輸出的Java類。java.io包具有執(zhí)行I/O的類。java.nio包是新的I/O包。

java.io包中的類都與基于流的I/O操作有關(guān)。 基于流的I/O使用流在數(shù)據(jù)源和Java程序之間傳輸字節(jié)數(shù)據(jù)。

Java程序每次從一個字節(jié)讀取或?qū)懭胍粋€字節(jié)。這種執(zhí)行I/O操作的方法很慢。流可以用于單向數(shù)據(jù)傳輸。 輸入流只能將數(shù)據(jù)從數(shù)據(jù)源傳輸?shù)絁ava程序,而輸出流只能將數(shù)據(jù)從Java程序傳輸?shù)綌?shù)據(jù)目標。

新輸入/輸出(NIO)解決了基于流的I/O中的慢速問題。在NIO中處理I/O操作的通道和緩沖區(qū)。一個通道就像一個流。它表示數(shù)據(jù)源和Java程序之間的連接。

通道提供雙向數(shù)據(jù)傳輸工具,可以使用通道來讀取數(shù)據(jù)以及寫入數(shù)據(jù)??梢垣@得只讀通道,只寫通道或讀寫通道。緩沖區(qū)是有界數(shù)據(jù)容器,具有確定其可能包含數(shù)據(jù)的上限固定容量。

在基于流的I/O中,可直接將數(shù)據(jù)寫入流。 在基于通道的I/O中將數(shù)據(jù)寫入緩沖區(qū),并將該緩沖區(qū)傳遞到將數(shù)據(jù)寫入數(shù)據(jù)目標的通道。

當(dāng)從數(shù)據(jù)源讀取數(shù)據(jù)時,向一個通道傳遞一個緩沖區(qū)。通道將數(shù)據(jù)從數(shù)據(jù)源讀入緩沖區(qū)。

Java 7引入了新的輸入/輸出API,它提供了一個新的I/O API。 它提供了原始文件I/O API中缺少的一些功能。它向Java類庫添加了三個包:java.nio.filejava.nio.file.attributejava.nio.file.spi。

新的輸入/輸出API以統(tǒng)一的方式處理所有文件系統(tǒng)。新輸入/輸出API提供的文件系統(tǒng)支持是可擴展的。新的輸入/輸出API支持所有文件系統(tǒng)上的基本文件操作(復(fù)制,移動和刪除)。它支持符號鏈接。

它支持訪問文件系統(tǒng)和文件的屬性??梢詣?chuàng)建一個監(jiān)視服務(wù)來監(jiān)視目錄上的任何事件,例如添加新文件或子目錄,刪除文件等。


上一篇:Java Scanner類下一篇:Java InputStream