API介绍:

解析:Reader类是支付方输入流的根,是一个类的抽象,其子类必须重写read()和close方法。
功能方法:

FileReader类
API介绍:

解析:FileReader类是读取字符文件的方便类,方便体现在两点,首先有默认字符编码表(与操作系统编码表一致),第二有默认换字符缓冲区大小。如果需要指定该两点,需要使用InputStreamRead类。
构造方法:
public class Demo16 {
public static void main(String[] args) throws FileNotFoundException {
FileReader in = new FileReader("文件地址");
System.out.println(in);//输出对象地址。
File file = new File("文件地址");
FileReader in2 = new FileReader(file);
System.out.println(in2);//输出对象地址
}
}
功能方法(与read类功能一致)
public class Demo17 {
public static void main(String[] args) throws IOException {
FileReader in = new FileReader("文件地址");
int c =in.read();
System.out.println(c);
char [] cs = new char[1024];
int len =-1;
while((len=in.read(cs))!=-1){
System.out.println(new String(cs,0,len));
//一堆一堆字符某部分(少用)
char [] ch = new char[1024];
int leng = -1;
while((leng=in.read(ch,1,2))!=-1){
System.out.println(new String(ch,1,2));
}
in.close();
}
}
}
字符输入流实现文件复制操作:

文件文本:
public class Demo18 {
public static void main(String[] args) throws IOException {
FileReader in = new FileReader("文件地址");
FileWriter out = new FileWriter("需要复制的到的地址");
//2、FileReader 字符读取
//2、FileReader 字符读取
// int c = -1;
// while ((c = in.read()) != -1) {
// //3、FileWriter 字符写入
// out.write(c);
//
char [] chs = new char[1024];
int len = -1;
while((len=in.read(chs))!=-1){
out.write(chs,0,len);
}
System.out.println("复制成功!");
}
}
注;非文本文件无法复制非文本文件,会导致文件损坏。
本文深入讲解Java中的字符流,重点介绍了Reader和FileReader类的功能与使用方法,包括构造方法、read()方法及如何利用字符流进行文件复制。通过实例演示了如何读取文件并逐字符显示,以及如何将一个文本文件的内容复制到另一个文件。
1595

被折叠的 条评论
为什么被折叠?



