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