IO流(九)FileReader类与FileWriter类

FileReader类是InputStreamReader的子类,FileWrtite是OutputStreamWriter的子类,主要用来修饰文件,进行文件的读写。

FileInputStream和FileOutputStream也是修饰文件,用来进行文件的读写,不同的是FileInputStream和FileOutputStream进行的是字节的读写。而FileReader和FileWriter进行的是字符的读写。

1.FileReader类

1.1构造器

FileReader(File file):利用文件file创建一个FileReader对象

FileReader(FileDescriptor fd):利用文件描述符fd创建一个FileReader对象

FileReader(String fileName):利用文件名字符串创建一个FileReader对象

上面是FileReader的构造器,与之相比,FileInputStream的构造器和其一致:

FileInputStream(File file):利用文件file创建一个FileInputStream对象

FileInputStream(FileDescriptor fd):利用文件描述符fd创建一个FileInputStream对象

FileInputStream(String fileName):利用文件名fileName创建一个FileInputStream对象

1.2常用方法

常用方法分别为

a.继承自InputStreamReader的方法

close()/read()/read(char[],int offset,int len)/ready()/getEncoding()

b.继承自Reader的方法

close()/ready()/read()/read(char[] c,int offset,int len)/mark()/markSupported()/reset()/skip()

c.继承自Object的方法

不再赘述

2.FileWriter类

2.1构造器

FileWriter(File file):利用file创建一个FileWriter对象,追加模式默认为“false”

FileWriter(File file,boolean append):利用file创建一个FileWriter对象,追加模式为指定追加模式

FileWriter(String fileName):利用fileName创建一个FileWriter对象,追加模式为“false”

 FileWriter(String fileName,boolean append):利用fileName创建一个FileWriter对象,追加模式为指定追加模式

 FileWriter(FileDescriptor fd):利用fd创建一个FileWriter对象,追加模式默认为“false”

需要指出的是利用FileDescriptor创建FileWriter,没有设置追加模式的构造器,只有追加模式默认为"false"

FileOutputStream的构造器和其类似,详情如下:

FileOutputStream(File file):利用file创建FileOutputStream对象,追加模式默认为“false”

FileOutputStream(File file,boolean append):利用file创建FileOutputStream对象,追加模式为指定模式

FileOutputStream(String fileName):利用fileName创建FileOutputStream对象,追加模式默认为“false”

FileOutputStream(String fileName,boolean append):利用fileName创建FileOutputStream对象,追加模式为指定追加模式

FileOutputStream(FileDescriptor fde):利用fd创建FileOutputStream对象,追加模式默认为“false”

2.2常用方法

a.继承自OutputStreamWriter的方法

close()/flush()/write(int c)/write(char[] c,int offset,int len)/ write(String str,int offset,int len)

b.继承自Writer的方法

/append(charsequence c,int start ,int end)/append(char c)

原文地址:https://www.cnblogs.com/hitnmg/p/9473767.html