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

本文详细介绍了Java中的FileWriter类,包括它的构造方法特性、如何创建字符输出流对象、数据写入操作、flush与close的区别、换行方法、续写文件的实现以及异常处理技巧。通过示例代码,展示了如何正确处理IOException并确保流被适当关闭。

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("打开失败");
                        }
        }
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值