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
广告