int read(CharBuffer target)


描述

所述java.io.Reader.read(CharBuffer target)方法试图将字符读入指定的字符缓冲区。缓冲区按原样用作字符存储库:唯一的更改是put操作的结果。不执行缓冲器的翻转或倒带。

声明

以下是java.io.Reader.read()方法的声明。

public int read(CharBuffer target)

参数

target - 读取字符的缓冲区。

返回值

此方法返回添加到缓冲区的字符数,如果此字符源位于其末尾,则返回-1。

异常

IOException - 如果流不支持mark(),或者发生某些其他I / O错误。

NullPointerException - 如果target为null。

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