中文字幕天天躁日日躁狠狠躁,最近中文字幕大全免费版在线,最近2019免费中文字幕视频三,亚洲精品无码你懂的,亚洲国产精品成人精品小说

  • 相關(guān)軟件
    >BufferedInputStream 創(chuàng)建者:webmaster 更新時間:2005-12-17 04:12


    該類實現(xiàn)一個緩沖的輸入流。通過設(shè)置這樣的輸入流, 一個應(yīng)用
    不必為每個讀取的字節(jié)調(diào)用基本系統(tǒng)就能將字節(jié)讀入字節(jié)流中。數(shù)據(jù)以分塊形式讀入緩沖區(qū);順序讀取能直接存取緩沖區(qū)中的數(shù)據(jù)。




    類 java.io.BufferedInputStream



    java.lang.Object
      |
      +----java.io.InputStream
          |
          +----java.io.FilterInputStream
                |
                +----java.io.BufferedInputStream




    public class BufferedInputStream
    extends FilterInputStream





    變量索引



    buf
    數(shù)據(jù)存儲的緩沖區(qū)。
    count
    比緩沖區(qū)中最后一個有效字節(jié)的下標大一的下標。
    marklimit
    順序調(diào)用 reset 方法失敗前,調(diào)用 mark
    方法之后所允許的最大讀取數(shù)。
    markpos
    上次調(diào)用 mark方法時 pos 域的值。
    pos
    緩沖區(qū)中當(dāng)前位置。



    構(gòu)造子索引



    BufferedInputStream(InputStream)
    創(chuàng)建一個新的緩沖輸入流以便從指定輸入流中以缺省 512 字節(jié)緩沖區(qū)尺寸來讀取數(shù)據(jù)。
    BufferedInputStream(InputStream, int)
    創(chuàng)建一個新的緩沖輸入流以便從指定輸入流中以指定緩沖區(qū)尺寸讀取數(shù)據(jù)。



    方法索引



    available()
    返回能從該未分塊輸入流中讀取的字節(jié)數(shù)。
    mark(int)
    在該輸入流中標記當(dāng)前位置。
    markSupported()
    測試該輸入流是否支持markreset方法。
    read()
    從緩沖輸入流中讀取下一個數(shù)據(jù)字節(jié)。
    read(byte[], int, int)
    將字符讀入一個數(shù)組的某部分中。
    reset()
    將該輸入流重新定位到該輸入流上mark方法上次調(diào)用的位置。
    skip(long)
    跳過并刪除輸入流的 n 字節(jié)數(shù)據(jù)。




    變量



    buf

    protected byte buf[]


    數(shù)據(jù)存儲的緩沖區(qū)。




    count

    protected int count


    比緩沖區(qū)中最后一個有效字節(jié)的下標大一的下標。




    pos

    protected int pos


    緩沖區(qū)中當(dāng)前位置。這是從 buf 數(shù)組中讀取的下一個字符的下標。



     
    參見:
     
    buf



    markpos

    protected int markpos


    上次調(diào)用mark方法時的 pos 域值。若無當(dāng)前標記,則該域值為 -1 。



     
    參見:
     
    mark, pos



    marklimit

    protected int marklimit


    順序調(diào)用reset失敗前,調(diào)用mark方法之后允許的最大讀取數(shù)。



     
    參見:
     
    mark, reset





    構(gòu)造子




    BufferedInputStream

    public BufferedInputStream(InputStream in)


    創(chuàng)建一個新的緩沖輸入流以便從指定輸入流中以缺省 512 字節(jié)來讀取數(shù)據(jù)。



     
    參數(shù):
     
    in - 基本的輸入緩存。



    BufferedInputStream

    public BufferedInputStream(InputStream in,
            int size)


    創(chuàng)建一個新的緩沖輸入流以便從指定輸入流中以指定緩沖區(qū)尺寸讀取數(shù)據(jù)。



     
    參數(shù):
     
    in - 基本的輸入緩存。
     
    size - 緩沖區(qū)尺寸。





    方法



    read

    public synchronized int read() throws IOException


    從該緩沖輸入流中讀取下一個數(shù)據(jù)字節(jié)。返回的字節(jié)值是
    0255 范圍內(nèi)的一個 int 數(shù)。如果已讀到流尾,無可讀的字節(jié)時,返回 -1。禁用該方法,除非輸入數(shù)據(jù)可用,檢測出數(shù)據(jù)流終止或拋出異常。


    若緩沖區(qū)不為空,則 BufferedInputStream方法返回其緩沖區(qū)的下一個數(shù)據(jù)字節(jié)。否則, 若基本流未返回流終止指示符,則用基本輸入流重新填充緩沖流并返回下一個字符。



     
    返回值:
     
    數(shù)據(jù)的下一個字節(jié),若已讀到流尾則為 -1 。
     
    拋出:
    OException
     
    如果發(fā)生某個 I/O 錯誤。
     
    覆蓋:
     

    FilterInputStream
    中的 read 。
    參見:
     
    in



    read

    public synchronized int read(byte b[],
                int off,
              int len) throws IOException


    將字符讀入一個數(shù)組的某部分中。阻塞該方法直到某些輸入數(shù)據(jù)可用、發(fā)生 I/O 錯誤或到達流尾為止。

    若該流的緩沖區(qū)不為空,則將字節(jié)從中復(fù)制到參數(shù)數(shù)組,否則,
    用基本輸入流重新填充該緩沖區(qū)并 (除非數(shù)據(jù)流返回流尾指示符) 用新填充的緩沖區(qū)字符來填充數(shù)組參數(shù)。


    作為一種優(yōu)化, 若緩沖區(qū)為空、標志不有效且 len
    至少與緩沖區(qū)一樣大, 則該方法將直接從基本流中讀取數(shù)據(jù)到給定數(shù)組中。因此冗余的 BufferedInputStream
    不能復(fù)制不必要的數(shù)據(jù)。



     
    參數(shù):
     
    b - 目標緩沖區(qū)。
     
    off - 開始存儲字節(jié)的偏移量。
     
    len - 讀取字節(jié)的最大數(shù)。
     
    返回值:
     
    讀取字節(jié)數(shù), 若已達到流尾,則為 -1。  
    拋出:
    OException
     
    如果發(fā)生某個 I/O 錯誤。
     
    覆蓋:
     
    類 FilterInputStream
    中的 read 。



    skip

    public synchronized long skip(long n) throws IOException


    跳過并刪除輸入流的 n 字節(jié)數(shù)據(jù)。skip
    方法因各種原因可終止跳過一些較小的字節(jié)數(shù),可能是零。跳過的實際字節(jié)數(shù)被返回。


    BufferedInputStream skip 方法比較其緩沖區(qū)中可用字節(jié)數(shù),k, 其中 k =
    count - pos,
    n 遞增。若 n ≤ k,
    pos 域以 n遞增。否則,遞增 pos 域來獲得值
    count,并通過調(diào)用基本輸入流上的
    skip 方法并提供參數(shù)
    n - k 來跳過剩余字節(jié)。



     
    參數(shù):
     
    n - 跳過的字節(jié)數(shù)。
     
    返回值:
     
    實際跳過的字節(jié)數(shù)。
     
    拋出:
    OException
     
    如果發(fā)生某個 I/O 錯誤。
     
    覆蓋:
     
    類 FilterInputStream
    中的 skip



    available

    public synchronized int available() throws IOException


    返回能從該未分塊輸入流中讀取的字節(jié)數(shù)。


    BufferedInputStreamavailable
    方法返回緩沖區(qū)中剩余的字節(jié)總數(shù) (count - pos) 和調(diào)用基本輸入流的可用的方法的結(jié)果。



     
    返回值:
     
    從當(dāng)前輸入流中可無阻塞讀取的字節(jié)數(shù)。
     
    拋出:
    OException
     
    如果發(fā)生某個 I/O 錯誤。
     
    覆蓋:
     
    類 FilterInputStream
    中的 available 。
    參見:
     
    in



    mark

    public synchronized void mark(int readlimit)


    在該輸入流中標記當(dāng)前位置。后續(xù)調(diào)用 reset 方法重新將流定位于最后的標記位置,從而后續(xù)讀取能讀取相同字節(jié)。


    readlimit 參數(shù)提供輸入流在標記位置變?yōu)榉欠ㄇ八试S讀取多個字節(jié)數(shù)。



     
    參數(shù):
     
    readlimit - 標記位置變?yōu)闊o效前能讀取的最大字節(jié)數(shù)。  
    覆蓋:

    類 FilterInputStream
    中的 mark 。
    參見:
     
    reset



    reset

    public synchronized void reset() throws IOException


    將該輸入流重新定位到該輸入流的mark方法上次調(diào)用時的位置。


    若流仍未標記或標記非法,則拋出一個 IOException 。讀取前需要瀏覽一下流內(nèi)容時,才使用流標記。調(diào)用通用的語法分析器將很容易做到這一點。若流是語法分析器所處理的類型,則繼續(xù)前進。若流不是該類型,失敗時語法分析器將拋出異常。若在 readlimit 字節(jié)內(nèi)拋出異常,
    則語法分析器允許外部編碼重置該流并使用另一語法分析器。



     
    拋出:
    OException
     
    若該流仍未標記或標記已是非法的。  
    覆蓋:
    類 FilterInputStream
    中的 reset
    參見:
     
    mark



    markSupported

    public boolean markSupported()


    測試該輸入流是否支持markreset方法。BufferedInputStreammarkSupported
    方法返回 true 。



     
    返回值:
     
    boolean,它指示該流類型是否支持mark
    reset 方法。
     
    覆蓋:
    類 FilterInputStream 中的
    markSupported
    參見:
     
    mark, reset

    相關(guān)文章
    本頁查看次數(shù):