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

被折叠的 条评论
为什么被折叠?



