CharArrayReader类使用字符数组作为源的一个输入流实现。该类具有两个构造函数,每个构造函数都需要一个字符数组来提供数据源:
CharArrayReader(char array[])
CharArrayReader(char array[],int start,int numberChars)
其中array是输入源第二个构造函数根据字符数组的子集创建Reader对象,该子集从start指定的索引位置的字符开始,共numberChars个字符
CharArrayReader实现的close()方法不会抛出任何异常,因为这不可能失败。
下面的例子使用一对CharArrayReader对象:
import java.io.*; class CharArrayReaderDemo { public static void main(String[] args){ String tmp="abcdefghijklmnopqrstuvwxyz"; char c[]=new char[tmp.length()]; tmp.getChars(0, tmp.length(), c, 0); int i; try(CharArrayReader input1=new CharArrayReader(c)){ System.out.println("Input1 is:"); while((i=input1.read())!=-1) System.out.print((char)i); System.out.println(); }catch(IOException e){ System.out.println("I/O Error: "+e); } try(CharArrayReader input2=new CharArrayReader(c,0,5)){ System.out.println("input2 is: "); while((i=input2.read())!=-1) System.out.print((char)i); System.out.println(); }catch(IOException e){ System.out.println("IO Error: "+e); } } }