java.io.Reader.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 -- 如果目标是一个只读缓冲区
例子
下面的示例演示java.io.Reader.read()方法的用法。
package com.yiibai; 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