I/O流
I/O流表示輸入源或輸出目標,流可以表示許多不同類型的源和目標,包括磁盤文件、設備、其他程序和內存數組。
流支持許多不同類型的數據,包括簡單字節、原始數據類型、本地化字符和對象,有些流只是傳遞數據,其他人以有用的方式操縱和轉換數據。
無論它們如何在內部工作,所有流都為使用它們的程序提供相同的簡單模型:流是一系列數據,程序使用輸入流從源讀取數據,一次一個條目:
程序使用輸出流將數據寫入目標,一次一個條目:
在本課程中,我們將看到可以處理各種數據的流,從原始值到高級對象。
上圖所示的數據源和數據目的地可以是保存、生成或使用數據的任何內容,顯然這包括磁盤文件,但源或目標也可以是另一個程序、外圍設備,網絡socket或數組。
在下一節中,我們將使用最基本的流(字節流)來演示流I/O的常見操作,對于示例輸入,我們將使用示例文件xanadu.txt,其中包含以下內容:
In Xanadu did Kubla Khan A stately pleasure-dome decree: Where Alph, the sacred river, ran Through caverns measureless to man Down to a sunless sea.下一篇:字節流
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/72946.html
字符流 Java平臺使用Unicode約定存儲字符值,字符流I/O自動將此內部格式與本地字符集進行轉換,在Western語言環境中,本地字符集通常是ASCII的8位超集。 對于大多數應用程序,具有字符流的I/O并不比具有字節流的I/O復雜,使用流類完成的輸入和輸出會自動轉換為本地字符集和從本地字符集轉換,使用字符流代替字節流的程序會自動適應本地字符集并為國際化做了準備 — 所有這些都無需程序員的額...
命令行I/O 程序通常從命令行運行,并在命令行環境中與用戶交互,Java平臺以兩種方式支持這種交互:通過標準流和控制臺。 標準流 標準流是許多操作系統的一個特性,默認情況下,它們從鍵盤讀取輸入并將輸出寫入顯示器,它們還支持文件和程序之間的I/O,但該功能由命令行解釋器控制,而不是程序。 Java平臺支持三種標準流:標準輸入,可通過System.in訪問;標準輸出,可通過System.out訪問;和...
字節流 程序使用字節流來執行8位字節的輸入和輸出,所有的字節流類都是從InputStream和OutputStream派生出來的。 有許多字節流類,為了演示字節流的工作原理,我們將重點關注文件I/O字節流,FileInputStream和FileOutputStream,其他類型的字節流以大致相同的方式使用,它們的不同之處主要在于它們的構造方式。 使用字節流 我們將通過檢查名為CopyBytes的...
Java? 教程 Java教程是為JDK 8編寫的,本頁面中描述的示例和實踐沒有利用在后續版本中引入的改進。 Java教程是希望使用Java編程語言創建應用程序的程序員的實用指南,其中包括數百個完整的工作示例和數十個課程,相關課程組被組織成教程。 覆蓋基礎知識的路徑 這些教程以書籍的形式提供,如Java教程,第六版,前往Amazon.com購買。 入門 介紹Java技術和安裝Java開發軟件并使用...
緩沖流 到目前為止,我們看到的大多數示例都使用無緩沖的I/O,這意味著每個讀取或寫入請求都由底層操作系統直接處理,這可以使程序效率低得多,因為每個這樣的請求通常觸發磁盤訪問、網絡活動或一些相對昂貴的其他操作。 為了減少這種開銷,Java平臺實現了緩沖的I/O流,緩沖輸入流從稱為緩沖區的內存區讀取數據,僅當緩沖區為空時才調用原生輸入API,類似地,緩沖輸出流將數據寫入緩沖區,并且僅在緩沖區已滿時才調...
閱讀 3691·2021-08-10 09:42
閱讀 590·2019-08-30 15:55
閱讀 887·2019-08-30 15:54
閱讀 3112·2019-08-30 13:45
閱讀 554·2019-08-29 16:23
閱讀 1990·2019-08-29 16:23
閱讀 983·2019-08-29 15:18
閱讀 2260·2019-08-29 12:57