Java.io.Reader.read() 方法



描述

java.io.Reader.read(CharBuffer target) 方法嘗試將字元讀入指定的字元緩衝區。緩衝區按原樣用作字元儲存庫:唯一更改的是 put 操作的結果。不會對緩衝區執行翻轉或倒帶操作。

宣告

以下是java.io.Reader.read() 方法的宣告。

public int read(CharBuffer target)

引數

target − 要將字元讀入的緩衝區。

返回值

此方法返回新增到緩衝區的字元數,如果此字元源已到達結尾,則返回 -1。

異常

  • IOException − 如果流不支援 mark(),或者發生其他 I/O 錯誤。

  • NullPointerException − 如果 target 為空。

  • ReadOnlyBufferException − 如果 target 是隻讀緩衝區。

示例

以下示例顯示了java.io.Reader.read() 方法的用法。

package com.tutorialspoint;

import java.io.*;
import java.nio.CharBuffer;

public class ReaderDemo {
   public static void main(String[] args) {
      String s = "Hello world";

      // create a new Char Buffer with capacity of 12
      CharBuffer cb = CharBuffer.allocate(12);

      // create a StringReader
      Reader reader = new StringReader(s);

      try {
         // read characters into a char buffer
         reader.read(cb);

         // flip the char buffer
         cb.flip();

         // print the char buffer
         System.out.println(cb.toString());

         // Close the stream 
         reader.close();

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

讓我們編譯並執行上述程式,這將產生以下結果:

Hello world
java_io_reader.htm
廣告