您的位置:首页 > 编程语言 > Java开发

JavaSE8基础 OutputStreamWriter flush 写入字符后要刷新缓冲区

2017-09-24 10:58 357 查看
礼悟:
公恒学思合行悟,尊师重道存感恩。叶见寻根三返一,江河湖海同一体。
虚怀若谷良心主,愿行无悔给最苦。读书锻炼养身心,诚劝且行且珍惜。

os :windows7 x64
jdk:jdk-8u131-windows-x64
ide:Eclipse Oxygen Release (4.7.0)


information:

  工作空间的初始状态

  


code:

package jizuiku0;

import java.io.FileOutputStream;
import java.io.IOException;
import java.io.OutputStreamWriter;

/*
* @version V17.09
*/
public class FlushDemo {

// 我在这里使用 throws,目的是为了方便地阅读代码
// 然而 在做项目中 还是需要使用try..catch对异常做出相应的处理
public static void main(String[] args) throws IOException {

// 文件路径 (相对路径)
String path = "test.txt";
FileOutputStream fos = new FileOutputStream(path);

String charsetName = "UTF-8";
OutputStreamWriter osw = new OutputStreamWriter(fos, charsetName);

osw.write("博客园");// 执行完这句时, 字符串"博客园"是处于缓冲区中的

osw.flush();// 刷新缓冲区 -> 把缓冲区的内容写入到 文件中

// 刷新之后 还可以继续写
osw.write("给最苦");

// 记得关闭流close()->先刷新,再释放资源
// close之后,就不可以再次使用osw进行写操作了
osw.close();
}
}


result:
  工作空间文件夹中会生成 test.txt文件,需要进行 refresh 才能在eclipse中看到文件。

  由于eclipse默认的字符集编码是 GBK,而代码中写入文件时 用的字符集是UTF-8,所以需要先设置 读取文件所用的字符集。



  文件中的内容



  

Java优秀,值得学习。
学习资源:itcast和itheima视频库。如果您有公开的资源,可以分享给我的话,用您的资源学习也可以。
博文是观看视频后,融入思考写成的。博文好,是老师讲得好。博文坏,是 给最苦 没认真。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐