码迷,mamicode.com
首页 > 编程语言 > 详细

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

时间:2017-09-24 11:43:48      阅读:350      评论:0      收藏:0      [点我收藏+]

标签:public   images   iter   exce   释放   lease   name   老师   new   



    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 写入字符后要刷新缓冲区

标签:public   images   iter   exce   释放   lease   name   老师   new   

原文地址:http://www.cnblogs.com/jizuiku/p/7586573.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!