流式I/O和文件

来源:http://www.cnblogs.com/rsnote/archive/2016/02/26/5221503.html
-Advertisement-
Play Games

1、普通輸入輸出類 1.1 InputStream類型:用來表示從不同數據源產生輸入的類,數據源包括 位元組數組 String對象 文件 管道:工作方式與實際管道相似,從一端輸入,從另一端輸出; 一個由其他種類的流組成的序列,以便可以將它們收集合併到一個單一的流內; 1.1.1 每一種數據源都有相應的


1、普通輸入輸出類

    1.1    InputStream類型:用來表示從不同數據源產生輸入的類,數據源包括             位元組數組             String對象             文件             管道:工作方式與實際管道相似,從一端輸入,從另一端輸出;             一個由其他種類的流組成的序列,以便可以將它們收集合併到一個單一的流內;         1.1.1    每一種數據源都有相應的InputStream子類。         1.1.2    FilterInputStream也屬於一種InputStream,為“decorator”類提供基類,而“decorator”類可以把屬性或有用的介面與輸入流連接在一起         1.1.3    InputStream的子類  
子類 功能 構造器參數
ByteArrayInputStream 允許將記憶體的緩衝區當作InputStream使用  
StringBufferInputStream 將String轉換為InputStream  
FileInputStream 用於從文件中讀取信息  
PipedInputStream 產生用於寫入相關PipedOutputStream  
SequenceInputStream 將兩個或多個InputStream對象轉換成單一InputStream  
FilterInputStream 作為修飾器的介面,其中,修飾器為其他的InputStream類提供有用功能  
    1.2    OutputStream類型:用來把產生的數據源輸出到不同的數據源中,這些數據源包括             位元組數組(非字元串)             文件或管道         1.2.1    OutputStream的子類  
子類 功能 構造器參數
ByteArrayOutputStream 在記憶體中創建緩衝區,所有送往stream的數據都要放置在此緩衝區  
FileOutputStream 用於將信息寫至文件  
PipedOutputStream 傳送輸出流可以連接到傳送輸入流,以創建通信管道。傳送輸出流失管道的發送端  
    1.3    FilterInputStream類:能夠完成兩件完全不同的事情
功能 構造器參數
DataInputStream 與DataOutputStream搭配使用,故可安裝可移植方式從流讀取基本數據類型(int,char,long)  
BufferedInputStream 使用它可以防止每次讀取是都得進行實際寫操作  
LineNumberInputStream 跟蹤輸入流中的行數,可調用getLineNumber()和setLineNumber(int)讀取和設置行號  
PushbackInputStream 具有“one byte push-back buffer”,因此可以將讀到的最後一個字元回退  
        1.4    FilterOutputStream類
功能 構造器參數
DataOutputStream 與DateInputStream搭配使用,可以按照可移植方式向流中寫入基本類型數據(int,char,long)  
PrintStream 用於產生格式化輸出,其中DataOutputStream處理數據的存儲,PrintStream處理顯示  
BufferedOutputStream 使用它可以避免每次發送數據時都要進行實際的寫操作,代表“使用緩衝區”,可以調用flush()清空緩衝區  

您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • atitit.編程語言 類與對象的 擴展機制.doc 1.1. Java 下一代: 沒有繼承性的擴展1 1.2. 繼承1 1.3. 使用cglib動態為Java類添加方法1 1.4. 工具類 1 1.5. Wrap 包裝類 裝飾器模式2 1.6. 擴展方法 (其實就是工具類的語法糖)2 1.7. S
  • Atitit .c#的未來新特性計劃草案 1. C#的未來:追蹤空引用1 1.1. 2. 變數命名空間1 1.2. 10. 項目引用Native dll2 1.3. 10. 項目引用Native dll2 2. 三、設計面向 面向變數的彙編語言,高級語言出現後,從Pascal/C語言面向過程和變數,
  • atitit.groovy 語法特性 1. Groovy 1.6概覽1 1.1. 多路賦值2 2. 新發佈的Groovy2.0為這門語言帶來了關鍵的靜態特性:靜態類型檢查和靜態編譯;2 3. 參考3 增強的ast @log @field 3. 動態類型def6 4. 迴圈變數不需要def6 5. S
  • Atitit避免出現空指針異常解決方案 1. Null的問題1 2. 強制區分一般引用vs 可空引用 vs 強制引用,或者說非空引用2 3. ?運算符(問號運算符) !感嘆號運算符避免出現空指針異常,2 4. Java 8中的Optional類2 4.1.1. 為什麼使用Optional要比常見的n
  • 封裝一個DB類,用來專門操作資料庫,以後凡是對資料庫的操作,都由DB類的對象來實現。這樣有了自己的DB類,寫項目時簡單的sql語句就不用每次寫了,直接調用就行,很方便! 1.封裝一個DB類。一個類文件應該只有一個類,其他的內容全部都沒有。類文件的命名規則:類名.class.php 下麵是創建DB類的
  • 1、下載jdk和eclipse jdk下載地址: 1.8版本 http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html 1.7版本 http://www.oracle.com/technet
  • 想替換string里的空格,遍歷替換提示如題錯誤,查詢得知string類型不可更改 1 import string 2 s = "2013/2/12" 3 b = s.replace('/','_') 4 5 print b
  • print u"中文" # -*- coding: utf-8 -*- 這句話放在最上面,記得是最上面,頂格寫 這樣,print後,字元串前就不用加u了
一周排行
    -Advertisement-
    Play Games
  • 前言 本文介紹一款使用 C# 與 WPF 開發的音頻播放器,其界面簡潔大方,操作體驗流暢。該播放器支持多種音頻格式(如 MP4、WMA、OGG、FLAC 等),並具備標記、實時歌詞顯示等功能。 另外,還支持換膚及多語言(中英文)切換。核心音頻處理採用 FFmpeg 組件,獲得了廣泛認可,目前 Git ...
  • OAuth2.0授權驗證-gitee授權碼模式 本文主要介紹如何筆者自己是如何使用gitee提供的OAuth2.0協議完成授權驗證並登錄到自己的系統,完整模式如圖 1、創建應用 打開gitee個人中心->第三方應用->創建應用 創建應用後在我的應用界面,查看已創建應用的Client ID和Clien ...
  • 解決了這個問題:《winForm下,fastReport.net 從.net framework 升級到.net5遇到的錯誤“Operation is not supported on this platform.”》 本文內容轉載自:https://www.fcnsoft.com/Home/Sho ...
  • 國內文章 WPF 從裸 Win 32 的 WM_Pointer 消息獲取觸摸點繪製筆跡 https://www.cnblogs.com/lindexi/p/18390983 本文將告訴大家如何在 WPF 裡面,接收裸 Win 32 的 WM_Pointer 消息,從消息裡面獲取觸摸點信息,使用觸摸點 ...
  • 前言 給大家推薦一個專為新零售快消行業打造了一套高效的進銷存管理系統。 系統不僅具備強大的庫存管理功能,還集成了高性能的輕量級 POS 解決方案,確保頁面載入速度極快,提供良好的用戶體驗。 項目介紹 Dorisoy.POS 是一款基於 .NET 7 和 Angular 4 開發的新零售快消進銷存管理 ...
  • ABP CLI常用的代碼分享 一、確保環境配置正確 安裝.NET CLI: ABP CLI是基於.NET Core或.NET 5/6/7等更高版本構建的,因此首先需要在你的開發環境中安裝.NET CLI。這可以通過訪問Microsoft官網下載並安裝相應版本的.NET SDK來實現。 安裝ABP ...
  • 問題 問題是這樣的:第三方的webapi,需要先調用登陸介面獲取Cookie,訪問其它介面時攜帶Cookie信息。 但使用HttpClient類調用登陸介面,返回的Headers中沒有找到Cookie信息。 分析 首先,使用Postman測試該登陸介面,正常返回Cookie信息,說明是HttpCli ...
  • 國內文章 關於.NET在中國為什麼工資低的分析 https://www.cnblogs.com/thinkingmore/p/18406244 .NET在中國開發者的薪資偏低,主要因市場需求、技術棧選擇和企業文化等因素所致。歷史上,.NET曾因微軟的閉源策略發展受限,儘管後來推出了跨平臺的.NET ...
  • 在WPF開發應用中,動畫不僅可以引起用戶的註意與興趣,而且還使軟體更加便於使用。前面幾篇文章講解了畫筆(Brush),形狀(Shape),幾何圖形(Geometry),變換(Transform)等相關內容,今天繼續講解動畫相關內容和知識點,僅供學習分享使用,如有不足之處,還請指正。 ...
  • 什麼是委托? 委托可以說是把一個方法代入另一個方法執行,相當於指向函數的指針;事件就相當於保存委托的數組; 1.實例化委托的方式: 方式1:通過new創建實例: public delegate void ShowDelegate(); 或者 public delegate string ShowDe ...