FilterOutputStream

FilterOutputStream編程術語,FilterOutputStream的其中一類是DataOutStream,DataInputStream的另一半是DataOutputStream。它的任務是把primitive數據和String對象重新組織成流,這樣其它機器就能用DataInputStream讀取這個流了。

基本介紹

  • 外文名:FilterOutputStream
  • 其中一類:DataInputStream
簡介,種類,

簡介

DataOutputStream的方法都是以"write"開頭的,比如writeByte( ),writeFloat( )等等。
PrintStream的用意是要以一種大家都能看懂的方式把primitive數據和String對象列印出來。這一點同DataOutputStream不同,後者是要將數據裝入一個流,然後再交給 DataInputStream處理。
PrintStream的兩個最重要的方法是print( )和println( )。這兩個方法都已經作了重載,因此可以列印各種數據。print( )和println( )的區別在於,後者會多列印一個換行符。
使用PrintStream的時候會比較麻煩,因為它會捕捉所有的IOException(所以你必須直接調用checkError( )來檢查錯誤條件,因為這個方法會在碰到問題的時候返回true)。再加上,PrintStream的國際化做得也不好,而且還不能以與平台無關的方式處理換行(這些問題都已經在PrintWriter里得到解決,我們接下來再講)。
BufferedOutputStream 是個decorator,它表示對流作緩衝,這樣每次往流里寫東西的時候它就不會再每次都作物理操作了。輸出的時候大致都要這么做。

種類

FilterOutputStream的種類

功能
構造函式的參數
用法


DataOutputStream
DataInputStream配合使用,這樣你就可以用一種"可攜帶的方式(portable fashion)"往流里寫primitive了(int, char, long,等)
包括寫入primitive數據的全套接口。


PrintStream
負責生成帶格式的輸出(formatted output)。DataOutputStrem負責數據的存儲,而PrintStream負責數據的顯示。
一個OutputStream以及一個可選的boolean值。這個boolean值表示,要不要清空換行符後面的緩衝區。
應該是OutputStream對象的最終包覆層。用的機會很多。


BufferedOutputStream
用 這個類解決"每次往流里寫數據,都要進行物理操作"的問題。也就是說"用緩衝區"。用flush( )清空緩衝區。
OutputStream, 以及一個可選的緩衝區大小
本身並不提供接口,只是加了一個緩衝區。需要連結一個有接口的對象。


相關詞條

熱門詞條

聯絡我們