<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    大鳥的學習樂園
    路漫漫其修遠兮,吾將上下而求索
    posts - 26,comments - 27,trackbacks - 0

    Java流操作

     
    對于我們常用的GBK中,英文是占用1個字節,中文是2個
    對于UTF-8,英文是1個,中文是3個
    對于Unicode,英文中文都是2個

    Java的流操作分為字節流和字符流兩種。

    1、 字節流

    所有的讀操作都繼承自一個公共超類java.io.InputStream類。

    所有的寫操作都繼承自一個公共超類java.io.OutputStream類。

    InputStreamOutputStream都是抽象類。

    InputStream6個低級輸入流:

    低級流

    流的用途

    ByteArrayInputStream

    從內存數組中讀取數據字節

    FileInputStream

    從本地文件系統中讀取數據字節

    PipedInputStream

    從線程管道中讀取數據字節

    StringBufferInputStream

    從字符串中讀取數據字節

    SequenceInputStream

    從兩個或多個低級流中讀取數據字節,當到達流的末尾時從一個流轉到另一個流

    System.in

    從用戶控制臺讀取數據字節

    InputStream還有一個子類:過濾器流java.io.FilterInputStream。過濾器流即能把基本流包裹起來,提供更多方便的用法。

    FilterInputStream 類的構造方法為FilterInputStream(InputStream),在指定的輸入流之上,創建一個輸入流過濾器。

    FilterInputStream的常用的子類如下:

    過濾器輸入流

    流的用途

    BufferedInputStream

    緩沖區對數據的訪問,以提高效率

    DataInputStream

    從輸入流中讀取基本數據類型,如intfloatdouble或者甚至一行文本

    LineNumberInputStream

    在翻譯行結束符的基礎上,維護一個計數器,該計數器表明正在讀取的是哪一行。

    PushbackInputStream

    允許把數據字節向后推到流的首部

    OutputStream(略)

    OutputStream的結構基本和InputStream是一樣的。

    2、 字符流

    注:是在jdk1.1里面引進的,上面字節流是在jdk1.0引進的。當用于處理文本數據時,選擇字符流比字節流更好。但對只出路基本數據類型的開發者,可以繼續使用字節流。

    所有的讀操作都繼承自一個公共超類java.io.Reader類。

    所有的寫操作都繼承自一個公共超類java.io.Writer類。

           同樣ReaderWriter也是抽象類。

    Reader的常用的子類如下:

    低級讀取器

    流的用途

    CharArrayReader

    從字符數組中讀取數據

    InputStreamReader

     

     

    FileReader(InputStreamReader的子類)

     

    從本地文件系統中讀取字符序列

    StringReader

    從字符串中讀取字符序列

    PipedReader

    從線程管道中讀取字符序列

    InputStreamReader重點講解:

    InputStreamReader是從輸入流中讀取數據,連接輸入流于讀取器。如:

    new InputStreamReader(System.in)

           構造方法:

    InputStreamReader(InputStream)

    用缺省的字符編碼方式,創建一個 InputStreamReader。

    InputStreamReader(InputStream, String)

    用已命名的字符編碼方式,創建一個 InputStreamReader。

           常用的過濾器讀取器:

    過濾器讀取器

     

    流的用途

    BufferedReader

    緩沖數據的訪問,以提高效率

     LineNumberReaderBufferedReader的子類)

    維護一個計數器,該計數器表明正在讀取的是哪一行。

    FilterReader(抽象類)

    提供一個類創建過濾器時可以擴展這個類

    PushbackReaderFilterReader的子類)

    允許把文本數據推回到讀取器的流中

    這些過濾器讀取器都可以傳入一個Reader作為構造方法的參數。

    Writer(略)

    Writer的結構基本和Reader是一樣的。

    字節流是最基本的,字符流是為了處理字符而提出來的。

    new BufferedReader(new InputStreamReader(client.getInputStream()));解釋:

    client.getInputStream()是字節流;

    InputStreamReader把字節流轉換成字符流;

    BufferedReader緩沖字符流,使得能夠使用readline()等方法,直接讀取一行。

     

    posted on 2009-06-02 13:14 大鳥 閱讀(327) 評論(0)  編輯  收藏 所屬分類: JAVA
    主站蜘蛛池模板: 中文亚洲成a人片在线观看| 永久中文字幕免费视频网站| 亚洲自偷自偷图片| 成年大片免费视频播放一级| 成人免费无码精品国产电影| 亚洲国产精品无码观看久久| 免费看的黄色大片| 日韩亚洲人成网站| 亚洲伊人久久综合影院| 毛片a级毛片免费观看品善网| 亚洲图片中文字幕| 成人免费毛片视频| 看一级毛片免费观看视频| 日韩亚洲精品福利| 特级做A爰片毛片免费看无码| 精品国产无限资源免费观看| 亚洲最大免费视频网| 午夜宅男在线永久免费观看网| 亚洲一区二区无码偷拍| 免费国产在线观看| 99视频在线免费观看| 亚洲电影中文字幕| 久久久久免费看黄A片APP | 国产成人涩涩涩视频在线观看免费| 亚洲午夜无码久久| 亚洲成a人在线看天堂无码| a毛片久久免费观看| 亚洲成人福利在线| 国产成人在线免费观看| 久久精品成人免费国产片小草| 亚洲一区二区在线视频| 成年人免费观看视频网站| 无码日韩人妻AV一区免费l| 蜜芽亚洲av无码精品色午夜| AV免费网址在线观看| 国产V片在线播放免费无码| 久久水蜜桃亚洲av无码精品麻豆| 希望影院高清免费观看视频| 激情小说亚洲色图| 麻豆亚洲AV永久无码精品久久 | 亚洲五月丁香综合视频|