public class WriteReadFiles {
private static Logger log = LoggerFactory.getLogger(WriteReadFiles.class);
public boolean writeFile(String content) {
String filename = "E:/java_src/MVCDemo3/MVCDemo3/accounts.txt";
try {
File f = new File(filename);
if (!f.exists()) {
f.createNewFile();
}
OutputStreamWriter write = new OutputStreamWriter(new FileOutputStream(f));
BufferedWriter writer = new BufferedWriter(write);
writer.write(content);
writer.flush();
write.close();
writer.close();
log.debug("Write File complete!");
return true;
}catch (Exception e){
e.printStackTrace();
}
return false;
}

 使用BufferedWriter 将内容写入文件,先开始少了wriite.flush()这句,发现无法写入内容。查资料后发现,原来BufferedWriter是缓冲输入流,意思是当你调用BufferedWriter的write方法时候。数据是先写入到缓冲区里,并没有直接写入到目的文件里。你必须调用BufferedWriter的flush()方法。这个方法会刷新一下该缓冲流,也就是会把数据写入到目的文件里。必须有这句的样子,实践中如果没有writer.flush(); 仅有writer.close();,会报异常。

可参考以下文章理解与文件读写相关的流:http://blog.csdn.net/u013225534/article/details/45727863

运用BufferedWriter把数据写入文件的更多相关文章

  1. POI解析excel,将批量数据写入文件或数据库

    .personSunflowerP { background: rgba(51, 153, 0, 0.66); border-bottom: 1px solid rgba(0, 102, 0, 1); ...

  2. iOS VideoToolbox硬编H.265(HEVC)H.264(AVC):2 H264数据写入文件

    本文档为iOS VideoToolbox硬编H.265(HEVC)H.264(AVC):1 概述续篇,主要描述: CMSampleBufferRef读取实际数据 序列参数集(Sequence Para ...

  3. 如何用Matlab将cell数据写入文件

    我们知道,一般的文件读写函数是不接受直接将cell内容(非数值)直接写入文件的, 例如:dlmwrite('o.txt', C, 'delimiter', '\t');%C 为cell类型数据,会报错 ...

  4. PHP内置函数file_put_content(),将数据写入文件,使用FILE_APPEND 参数进行内容追加

    file_put_contents(fileName,data,flags,context) 入参说明: 参数 说明 fileName 要写入数据的文件名 data 要写入的数据.类型可以是 stri ...

  5. Redis 中文入库成功,读取数据写入文件乱码问题

    近期须要用到redis ,可是在编码这个问题上,纠结了非常久.        需求 :每天一个进程将中文文件入库到redis中(不定时更新) ,另外几个进程读取redis中的信息 ,并处理数据结果.使 ...

  6. Pandas dataframe数据写入文件和数据库

    转自:http://www.dcharm.com/?p=584 Pandas是Python下一个开源数据分析的库,它提供的数据结构DataFrame极大的简化了数据分析过程中一些繁琐操作,DataFr ...

  7. ofstream文件输出流把二进制数据写入文件

    #include <fstream> #include <sstream> using namespace std; //在实际应用中,根据需要的不同,选择不同的类来定义:如果 ...

  8. python list数据写入文件

    看代码 def writeLmk(self,fileName,landmarks): fp = open(fileName,'w+') fp.write( "version: 1" ...

  9. python codecs模块 ---处理数据写入文件时会有编码不统一的问题

    我们用open方法打开文件有时候会有一些问题,因为open打开文件只能写入str类型,而不会管字符串是什么编码方式. 示例: >>> fr = open('test.txt','a' ...

随机推荐

  1. 美国恐怖故事第一季/全集American Horror Story 1全迅雷下载

    第一季 American Horror Story Season 1 (2011)看点:心理治疗师Ben(迪伦·麦克德莫特 Dylan McDermott 饰)因与女学生有染被妻子Vivien(康妮· ...

  2. nginx 代理ssh

    events { worker_connections 1024; } stream { #stream模块,就跟http模块一样 upstream ssh { server 127.0.0.1:22 ...

  3. 成功让Eclipse更新ADT的方法

    [本文转载自]http://blog.csdn.net/yihui8/article/details/8044426 原文:配置android开发环境eclipse获取ADT获取不到 https:// ...

  4. 用level-list让同一个ImageView根据条件来显示不同的内容

    感谢:http://blog.sina.com.cn/s/blog_6111ce890100psq9.html 有时候,我们为了在一个ImageView中显示不同的图片,平时往往会使用: if (条件 ...

  5. JAVA基础知识之编译、运行、打包

    一:java环境设置在环境变量中设置以下三个变量: JAVA_HOME=C:\j2sdk1.4.1 //可以改为相应的目录CLASSPATH=%JAVA_HOME%\lib\tools.jar;%JA ...

  6. Qt中printsupport的注意点和使用方法

    问题:Qt中包含QPrintDialog.QPrinter.QPrintPreviewDialog失败:在引入printsupport后报cpp:651: error: undefined refer ...

  7. Verilog 加法器和减法器(6)

    为了减小行波进位加法器中进位传播延迟的影响,可以尝试在每一级中快速计算进位,如果能在较短时间完成计算,则可以提高加法器性能. 我们可以进行如下的推导: 设 gi=xi&yi, pi = xi ...

  8. CF 329B(Biridian Forest-贪心-非二分)

    B. Biridian Forest time limit per test 2 seconds memory limit per test 256 megabytes input standard ...

  9. 使用Git Submodule管理子模块

    转自:https://segmentfault.com/a/1190000003076028 使用场景 基于公司的项目会越来越多,常常需要提取一个公共的类库提供给多个项目使用,但是这个library怎 ...

  10. 7.7 服务远程暴露 - 订阅与通知(TODO)

    为了安全:服务启动的ip全部使用10.10.10.10 远程服务的暴露总体步骤: 将ref封装为invoker 将invoker转换为exporter 启动netty 注册服务到zookeeper 订 ...