java字符流字符文件输出流FileWriter类你了解吗?下面的文章主要给大家介绍的就是这个方面的内容,主要涉及了FileWriter的构造方法的重载形式以及创建 FileWriter对象时的一些内容,一起来了解一下吧。
Java 提供了写入字符文件的便捷类FileWriter,FileWriter类的构造方法有4种重载形式:
FileWriter(File file)-在指定File对象的情况下构造一个FileWriter对象,其中,file表示要写入数据的File对象。
FileWriter(File file,boolean append)-在指定File对象的情况下构造一个FileWriter对象,如果append的值为true,则将字节写入文件末尾,而不是写入文件开始处。
FileWriter(String fileName)-在指定文件名的情况下构造一个FileWriter对象。其中,fileName表示要写入字符的文件名,表示的是完整路径。
FileWriter(String fileName,boolean append)-在指定文件名以及要写入文件的位置的情况下构造FileWriter对象,其中,append是一个boolean值,如果为true,则将数据写入文件末尾,而不是文件开始处。
在创建FileWriter对象的时候,默认字符编码和默认字节缓冲区大小都是由系统设定的,要自己指定这些值,可以在FileOutputStream上构造一个OutputStreamWriter对象。
FileWriter类的创建不依赖于文件存在与否,假如,关联文件不存在,那么就会自动生成一个新的文件,在创建文件之前,FileWriter将在创建对象的时候,打开它作为输出,假如,试图打开一个只读文件,将引发一个IOException异常。
注意一下,在创建FileWriter对象的时候,有可能会引发IOException或者是SecurityException异常,所以的话,就需要使用try catch语句捕获该异常。
示例:
编写一个程序,将用户输入的4个字符串保存到D:\myJava\book.txt文件中,在这里使用FileWriter类中的write()方法循环向指定文件中写入数据。
实现代码:
public class Test13 { public static void main(String[] args) { Scanner input = new Scanner(System.in); FileWriter fw = null; try { fw = new FileWriter("D:\\myJava\\book.txt"); // 创建FileWriter对象 for (int i = 0; i < 4; i++) { System.out.println("请输入第" + (i + 1) + "个字符串:"); String name = input.next(); // 读取输入的名称 fw.write(name + "\r\n"); // 循环写入文件 } System.out.println("录入完成!"); } catch (Exception e) { System.out.println(e.getMessage()); } finally { try { fw.close(); // 关闭对象 } catch (IOException e) { e.printStackTrace(); } } } }
上述代码,首先创建了一个指向D:\myJava\book.txt文件的字符文件输出流对象fw,之后,使用for循环录入4个字符串,并调用write()方法将字符串写入到指定的文件中,最后在finally语句中关闭字符文件输出流。
运行这个程序,根据提示输入4个字符串,如下:
请输入第1个字符串: 热点要闻 请输入第2个字符串: 个性推荐 请输入第3个字符串: 热搜新闻词 请输入第4个字符串: 本地看点 录入完成!
接着打开D:\myJava\book.txt文件,将看到写入的内容。
以上的内容你都清楚了吗?请继续关注奇Q工具网的java入门栏目吧,更多相关内容可以为你介绍。
推荐阅读: