位置:首頁 > Java技術 > Java.io包 > java.io.PipedReader.read(char[] cbuf, int off, int len)方法實例

java.io.PipedReader.read(char[] cbuf, int off, int len)方法實例

java.io.PipedReader.read(char[] cbuf, int off, int len) 方法讀取從這個管道流中多達len個數據字符轉換成字符數組。比len個字符少,如果已到達數據流的末尾,或將被讀取如果len超出管道緩衝區大小。此方法一直阻塞輸入至少一個字符是可用的。

聲明

以下是java.io.PipedReader.read()方法的聲明

public int read(char[] cbuf, int off, int len)

參數

  • cbuf -- 被讀出緩衝器中的數據。

  • off -- 該數據的起始偏移量。

  • len -- 讀出的最大字符數。

返回值

此方法返回讀入緩衝區的總字符數,或-1,如果冇有更多的數據,因為數據流已到達末尾。

異常

  • IOException -- 如果發生I/ O錯誤。

例子

下麵的示例演示java.io.PipedReader.read()方法的用法。

package com.yiibai;

import java.io.*;

public class PipedReaderDemo {

   public static void main(String[] args) {

      // create a new Piped writer and reader
      PipedWriter writer = new PipedWriter();
      PipedReader reader = new PipedReader();

      try {
         // connect the reader and the writer
         reader.connect(writer);

         // write something
         writer.write(70);
         writer.write(71);

         // read into a char array
         char[] b = new char[2];
         reader.read(b, 0, 2);

         // print the char array
         for (int i = 0; i < 2; i++) {
            System.out.println("" + b[i]);
         }

      } catch (IOException ex) {
         ex.printStackTrace();
      }


   }
}

讓我們編譯和運行上麵的程序,這將產生以下結果:

F
G