程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> JAVA編程 >> 關於JAVA >> java io學習(十) FilterOutputStream

java io學習(十) FilterOutputStream

編輯:關於JAVA

FilterOutputStream 介紹

FilterOutputStream 的作用是用來“封裝其它的輸出流,並為它們提供額外的功能”。它主要包括BufferedOutputStream, DataOutputStream和PrintStream。

(01) BufferedOutputStream的作用就是為“輸出流提供緩沖功能”。

(02) DataOutputStream 是用來裝飾其它輸出流,將DataOutputStream和DataInputStream輸入流配合使用,“允許應用程序以與機器無關方式從底層輸入流中讀寫基本 Java 數據類型”。

(03) PrintStream 是用來裝飾其它輸出流。它能為其他輸出流添加了功能,使它們能夠方便地打印各種數據值表示形式。

FilterOutputStream 源碼(基於jdk1.7.40)

查看本欄目

package java.io;
     
public class FilterOutputStream extends OutputStream {
    protected OutputStream out;
     
    public FilterOutputStream(OutputStream out) {
        this.out = out;
    }
     
    public void write(int b) throws IOException {
        out.write(b);
    }
     
    public void write(byte b[]) throws IOException {
        write(b, 0, b.length);
    }
     
    public void write(byte b[], int off, int len) throws IOException {
        if ((off | len | (b.length - (len + off)) | (off + len)) < 0)
            throw new IndexOutOfBoundsException();
     
        for (int i = 0 ; i < len ; i++) {
            write(b[off + i]);
        }
    }
     
    public void flush() throws IOException {
        out.flush();
    }
     
    public void close() throws IOException {
        try {
          flush();
        } catch (IOException ignored) {
        }
        out.close();
    }
}

來源:http://www.cnblogs.com/skywang12345/p/io_11.html

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved