java.io.FilterReader.read(char[] cbuf, int off, int len)方法实例
java.io.FilterReader.read(char[] cbuf, int off, int len) 方法从偏移量off读取长度为len的字符放入数组中。
声明
以下是java.io.FilterReader.read(char[] cbuf, int off, int len) 方法的声明:
public int read(char[] cbuf, int off, int len)
参数
-
cbuf -- 目标缓冲区
-
off -- 偏移量开始存储字符。
-
len -- 要读取的字符数
返回值
此方法返回的字符数读取,或如果已到达流的末尾返回-1。
异常
-
IOException -- 如果发生I/ O错误。
例子
下面的例子显示java.io.FilterReader.read(char[] cbuf, int off, int len)方法的用法。
package com.yiibai; import java.io.FilterReader; import java.io.Reader; import java.io.StringReader; public class FilterReaderDemo { public static void main(String[] args) throws Exception { FilterReader fr = null; Reader r = null; char[] cbuf = new char[6]; int i=0; try{ // create new reader r = new StringReader("ABCDEF"); // create new filter reader fr = new FilterReader(r) { }; // read data of len 4, to the buffer i = fr.read(cbuf, 2, 4); System.out.println("No. of characters read: "+i); // read till the end of the char buffer for(char c:cbuf) { // checks for the empty character in buffer if((byte)c==0) c='-'; // prints System.out.print(c); } }catch(Exception e){ // if any I/O error occurs e.printStackTrace(); }finally{ // releases system resources associated with this stream if(r!=null) r.close(); if(fr!=null) fr.close(); } } }
让我们编译和运行上面的程序,这将产生以下结果:
No. of characters read: 4 --ABCD