03IO流之字符流入门——FileWriter FileReader 流异常的处理

字符输出流 FileWriter

Writer是所有字符输出流的父类他是一个抽象类

FileWerter是Writer的子类OutputStreamWriter的子类

常用的构造方法

		 //1.参数1:文件路径 参数2:默认为false:覆盖已有数据  true:在已有数据后写入数据
        FileWriter fileWriter1 = new FileWriter("d.txt",true);
        //2.参数1:File对象 参数2:默认为false:覆盖已有数据  true:在已有数据后写入数据
        File file = new File("c.txt");
        FileWriter fileWriter2 = new FileWriter(file);

构造方法的作用
1.创建一个FileWriter对象
2.如果构造方法中的参数文件不存在,会创建这个文件
3.会把FileWriter对象指向创建好的文件

常用的方法

    1.writer("String") 没有返回值 把数据写入到内存缓冲区
    2.writer(int) 没有返回值 把数据写入到内存缓冲区
    3.writer(char[]) 没有返回值 把数据写入到内存缓冲区
    4.flush() 没有返回值 将写入到内存缓冲区的数据刷新到文件
    5.close() 没有返回值 将写入到内存缓冲区的数据刷新到文件并关闭流释放资源

字符输入流 FileReader

FileReader是Reader的子类InputStreamReader的子类

常用的构造方法

        //1.参数:文件路径
        FileReader fileReader1 = new FileReader("E:\\上传的文件\\需求描述.txt");
        //2.参数:File对象
        File file = new File("E:\\上传的文件\\需求描述.txt");
        FileReader fileReader2 = new FileReader(file);

构造方法的作用
1.创建一个FileReader对象
2.会把FileReader对象指向要读取的文件

常用的方法

		//1.int read() 读取单个字符 返回值为读取的字符 如果将文件中的数据读取完会返回-1
        //输出方式:
        int len = 0;
        while((len=fileReader1.read())!=-1){
            System.out.print((char)len);
        }
        //2.int read(char[]) 读取多个字符 返回值为读取到有效字符的个数  如果将文件中的数据读取完会返回-1
        char[] str = new char[1024];
        while((len=fileReader1.read(str))!=-1){
            System.out.println(new String(str));
        }

JDK7处理流异常

JDK7以后try后面可以加一个(),在括号中我们可以定义流对象,流对象的作用域只在try中try中的代码执行完毕之后会自动把流对象释放(缓存区的数据也会刷新到文件中)

发布了45 篇原创文章 · 获赞 47 · 访问量 1724

猜你喜欢

转载自blog.csdn.net/qq_44784185/article/details/102962972