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

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

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

    ivaneeo's blog

    自由的力量,自由的生活。

      BlogJava :: 首頁(yè) :: 聯(lián)系 :: 聚合  :: 管理
      669 Posts :: 0 Stories :: 64 Comments :: 0 Trackbacks
    public class ReaderInputStream extends InputStream {
        protected Reader reader;
        protected ByteArrayOutputStream byteArrayOut;
        protected Writer writer;
        protected char[] chars;
        protected byte[] buffer;
        protected int index, length;

          /**
           * 帶Reader參數(shù)構(gòu)造函數(shù)
           *
           * @param reader - InputStream使用的Reader
           */
          public ReaderInputStream(Reader reader) {
            this.reader = reader;
            byteArrayOut = new ByteArrayOutputStream();
            writer = new OutputStreamWriter(byteArrayOut);
            chars = new char[1024];
          }

          /**
           * 帶Reader和字符編碼格式參數(shù)的構(gòu)造函數(shù)
           *
           * @param reader   - InputStream使用的Reader
           * @param encoding - InputStream使用的字符編碼格式.
           * @throws 如果字符編碼格式不支持,則拋UnsupportedEncodingException異常
           */
          public ReaderInputStream(Reader reader, String encoding)
              throws UnsupportedEncodingException {
            this.reader = reader;
            byteArrayOut = new ByteArrayOutputStream();
            writer = new OutputStreamWriter(byteArrayOut, encoding);
            chars = new char[1024];
          }

          /**
           * @see java.io.InputStream#read()
           */
          public int read() throws IOException {
            if (index >= length)
              fillBuffer();
            if (index >= length)
              return -1;
            return 0xff & buffer[index++];
          }

          protected void fillBuffer() throws IOException {
            if (length < 0)
              return;
            int numChars = reader.read(chars);
            if (numChars < 0) {
              length = -1;
            } else {
              byteArrayOut.reset();
              writer.write(chars, 0, numChars);
              writer.flush();
              buffer = byteArrayOut.toByteArray();
              length = buffer.length;
              index = 0;
            }
          }

          /**
           * @see java.io.InputStream#read(byte[], int, int)
           */
          public int read(byte[] data, int off, int len) throws IOException {
            if (index >= length)
              fillBuffer();
            if (index >= length)
              return -1;
            int amount = Math.min(len, length - index);
            System.arraycopy(buffer, index, data, off, amount);
            index += amount;
            return amount;
          }

          /**
           * @see java.io.InputStream#available()
           */
          public int available() throws IOException {
            return (index < length) ? length - index :
                ((length >= 0) && reader.ready()) ? 1 : 0;
          }

          /**
           * @see java.io.InputStream#close()
           */
          public void close() throws IOException {
            reader.close();
          }

    }
    posted on 2005-08-11 09:27 ivaneeo 閱讀(2313) 評(píng)論(0)  編輯  收藏 所屬分類: java魔力
    主站蜘蛛池模板: a级毛片免费高清视频| 亚洲视频精品在线| 老司机午夜性生免费福利| 91嫩草国产在线观看免费| 亚洲最大在线观看| 很黄很色很刺激的视频免费| 亚洲人成777在线播放| A级毛片内射免费视频| 久久亚洲精品国产精品婷婷| 天堂在线免费观看中文版| 亚洲avav天堂av在线网毛片| 在线视频免费观看www动漫| 亚洲日韩精品无码专区加勒比| 日本免费无遮挡吸乳视频电影| 亚洲av色香蕉一区二区三区 | 亚洲色大成WWW亚洲女子| 最近2019中文字幕mv免费看| 亚洲午夜国产精品| 国产禁女女网站免费看| aaa毛片免费观看| 亚洲久本草在线中文字幕| 欧美a级在线现免费观看| 国产在亚洲线视频观看| 亚洲日产韩国一二三四区| 久久综合九色综合97免费下载| 亚洲中文无码av永久| 免费看小12萝裸体视频国产| 中国在线观看免费的www| 亚洲男女性高爱潮网站| 国产中文字幕免费| 日本中文字幕免费高清视频| 激情五月亚洲色图| 中文字幕亚洲专区| 国产92成人精品视频免费| 色视频在线观看免费| 亚洲AV无码一区二区三区牲色| 国产福利电影一区二区三区,亚洲国模精品一区 | 亚洲综合精品网站在线观看| 99ee6热久久免费精品6| 国产大陆亚洲精品国产| 综合自拍亚洲综合图不卡区|