字符流_Writer

字符流的特点(如果要操作 文字数据,建议优先考虑字符流)

Reader      Writer

数据的最常见体现形式:文件

 

需求:在硬盘上,创建一个文件并写入一些文字数据(FileWriter:专门用于操作文件的Writer子类对象)

import java.io.FileWriter;

import java.io.IOException;



public class FileWriterDemo {

    public static void main(String[] args)throws IOException {//之所以要抛出异常或try是因为要操作的文件的路径可能错误

        //创建一个FileWriter对象,该对象一被初始化就必须要明确被操作的文件

        //而且该文件会被创建到指定目录下,如果该目录下已有同名文件,将被覆盖

        //其实该步就是在明确数据要存放的目的地

        FileWriter fw = new FileWriter("F:\\demo.txt");



        fw.write("zonghadfdasfasd");//只是写到了内存中 也就是写到流中



        fw.flush();//刷新该流的数据,就是将流中的数据刷到目的地中

        

        

        fw.close();//关闭流资源,关闭之前会刷新一次内部的缓冲中的数据,将数据刷到目的地中

                   //和flush的区别:flush刷新后,流可以继续使用,close刷新后,会将流关闭(其实就是先调用了flush方法再关闭的)

    }

}

文件的续写,已有文件的数据续写 

import java.io.FileWriter;

import java.io.IOException;



public class FileWriterDemo {

    private static final String LINE_SEPARATOR = System.getProperty("line.separator");//获取当前系统的换行符



    public static void main(String[] args) throws IOException {

        //传递一个true参数,代表不覆盖已有的文件,并在已有文件的末尾处进行数据续写,记得要对异常进行处理,不能抛

        FileWriter fw = new FileWriter("F:\\dmeo.txt",true);

        

        fw.write("huang\r\njianfeng");//   \r\n能让文件中的内容在windows下换行, 

        fw.flush();

        

        fw.write("zhonghua"+LINE_SEPARATOR+"renming");

        fw.flush();



        fw.close();

    }

}

 

 

 

你可能感兴趣的:(Writer)