JavaSE8基础 OutputStreamWriter flush 写入字符后要刷新缓冲区
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JavaSE8基础 OutputStreamWriter flush 写入字符后要刷新缓冲区相关的知识,希望对你有一定的参考价值。
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视频库。如果您有公开的资源,可以分享给我的话,用您的资源学习也可以。
博文是观看视频后,融入思考写成的。博文好,是老师讲得好。博文坏,是 给最苦 没认真。
以上是关于JavaSE8基础 OutputStreamWriter flush 写入字符后要刷新缓冲区的主要内容,如果未能解决你的问题,请参考以下文章