运用BufferedWriter把数据写入文件

转自:http://hi.baidu.com/spcwimzzwbnptzr/item/009d8f04d0d0f000acdc700c

 

前几天在学Android的时候,碰到把数据写入文件的操作。搞了很久就是不能将数据写入到文件中。先看个例子:

File newFile = new File("Text.txt");   

String data ="你好,Android.2011";

FileWriter write = new FileWriter(newFile,true);

BufferedWriter bufferedWriter = new BufferedWriter(write);

bufferedWriter.write(data);

看了很久,感觉代码没错呀。可就是数据就是写不进文件里。纠结了很久,在网上查了很久,终于找到答案了。原来BufferedWriter是缓冲输入流,意思是当你调用BufferedWriter的write方法时候。数据是先写入到缓冲区里,并没有直接写入到目的文件里。你必须调用BufferedWriter的flush()方法。这个方法会刷新一下该缓冲流,也就是会把数据写入到目的文件里。或者你可以调用BufferedWriter的close()方法,该方法会在关闭该输入流之前先刷新一下该缓冲流。也会把数据写入到目的文件里。再看修改后的例子:

File newFile = new File("Text.txt");

String data ="你好,Android.2011";

FileWriter write = new FileWriter(newFile,true);

BufferedWriter bufferedWriter = new BufferedWriter(write);

bufferedWriter.write(data);bufferedWriter.newLine();//换行

/* * 刷新该流的缓冲。

* 关键的一行代码。如果没有加这行代码。数据只是保存在缓冲区中。没有写进文件。

* 加了这行才能将数据写入目的地。 * */

bufferedWriter.flush(); write.close();bufferedWriter.close();

 

 

你可能感兴趣的:(运用BufferedWriter把数据写入文件)