【学习笔记】Java IO流(1)--字符输出流FileWriter

来源:互联网 发布:淘宝店铺做充话费 编辑:程序博客网 时间:2024/06/09 20:49

FileWriter类

———–Public class FileWriter extends OutputStream

构造方法特点:没有空参构成方法

    FileWriter(File file)    FileWriter(File file , boolean append)    FileWriter(String fileName)    FileWriter(String fileName , boolean append)

创建字符输出流对象实例

FileWriter fw = new FileWriter("FileNAme");

PS:
1.实例创建时,必须明确文件(其中包括异处理IOException)
2.如果文件不存在,则自己创建文件;
3.如果文件存在,则会被覆盖;

数据写入

fw.writer(String)

PS:
1.writer是讲数据写入缓冲区中,并非文件(硬盘)中
2.如果需要需要写入文件(硬盘)中,需要调用flush()方法 实例fw.flush();

close和flush的区别

close与flush的调用都将会把缓冲区的数据写入文件(硬盘)中,close的调用会先调用flush将缓冲区的数据写入目的文件,再关闭输入输出流,即在close调用之后不能在对fw做任何方法调用。

换行 (换行方法详解)

private static final String LINE_SEPARATOR = System.getProperty(line.separator)//System.getProperty(line.separator)获得系统的换行符fw.writer(string+LINE_SEPARATOR+string);

续写

在FileWriter构造函数中调用,调用一下两个构造函数:

FileWriter(File file , boolean append)FileWriter(String fileName , boolean append)

append为true时表示续写文件。

IOException(IO异常处理)

对于IOException处理中,close方式必须执行,故对于close应做finally标示,同时对于流对象的创建应该在try外做对象创建,在try做对象初始化。代码示例如下:

FileWriter fw = null;        try {                fw = new FileWriter("k:\\demo.txt");                fw.write("abcde" + LINE_SEPARATOR + "hahaha");        } catch (IOException e) {                System.out.println(e.toString());        } finally {                if (fw != null)    //必须判断文件是否空                        try {                                fw.close();                        } catch (IOException e) {                                throw new RuntimeException("打开失败");                        }        }
0 0
原创粉丝点击