StringBuffer中的flush()方法作用
在java API1.6对flush()方法的介绍如下:
| 方法摘要 | |
|---|---|
void |
close() 关闭此流,但要先刷新它。 |
void |
flush() 刷新该流的缓冲。 |
void |
newLine() 写入一个行分隔符。 |
void |
write(char[] cbuf, int off, int len) 写入字符数组的某一部分。 |
void |
write(int c) 写入单个字符。 |
void |
write(String s, int off, int len) 写入字符串的某一部分。 |
flush
public void flush()
throws IOException
- 刷新该流的缓冲。
-
- 抛出:
IOException- 如果发生 I/O 错误
以上是API中介绍的,通过我的测试发现其具体的用处如下:
观察如下代码:
package mosTest; import java.io.BufferedWriter;
import java.io.File;
import java.io.FileWriter;
import java.io.IOException;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Date;
import java.util.List; public class lis { public static void main(String[] args) throws IOException {
File file1 = new File("D:\\io\\out.txt");
BufferedWriter bw = new BufferedWriter(new FileWriter(file1));
StringBuilder buffer = new StringBuilder("S|1|S0180||||");
buffer.append("\r\n");
List subList = new ArrayList();
List listid = new ArrayList();
long s= System.currentTimeMillis();
for (int i = 0; i < 60; i++) {
for(int k=0; k<5000; k++){
buffer.append("KKKKKKKKKKKKKKKKKKKKKKKKKK"+k);
buffer.append("\r\n");
}
bw.write(buffer.toString());
//bw.flush();
buffer = new StringBuilder();
}
bw.close();
}
}
该代码是每次写入文件5000长度的buffer,总共写入60次。
如果没有加上第30行注释的bw.flush().在第29行执行的程序,写入的数据并不是写入到文件中而是写入到内存中,此时当
StringBuffer超过内存限制的时候,会把缓存中的数据才会写入到文件中,相当于超过限制的执行了一次bw.flush();
而加上bw.flush()后,会在每次执行到此处的时候都会把缓存中的数据写入到文件中,并清空缓存。
但是需要注意的是,如果加上这句,每次循环都会执行一次,同样的会增加用时。所以时间和占用缓存这个需要做比较了
StringBuffer中的flush()方法作用的更多相关文章
- Java 输出流中的flush方法
转自:http://blog.csdn.net/jiyangsb/article/details/50984440 java中的IO流中的输出流一般都有flush这个操作,这个操作的作用是强制将缓存中 ...
- java中的hashcode方法作用以及内存泄漏问题
本文装载:http://hi.baidu.com/iduany/item/6d66dfc9d5f2da1650505870 hashCode()方法的作用&使用分析 一直以来都想写篇文章来说明 ...
- HTML5中的data-*属性和jQuery中的.data()方法使用
原文地址链接:http://blog.csdn.net/fly_zxy/article/details/50687691: HTML5中的data-*属性 我们往往会根据需要在HTML标记上添加自定义 ...
- java中基本输入输出流的解释(flush方法的使用)
转自:http://fsz521job.itpub.net/post/5606/34827 网络程序的很大一部分是简单的输入输出,即从一个系统向另一个系统移动字节.字节就是字节,在很大程度上,读服务器 ...
- FileWriter类的flush方法的作用
FileWriter类的flush方法的作用 每次io都会影响性能,将需要写入的内容,放入缓冲区中,然后调用flush方法,将缓冲区内容写入文件中.
- Struts2中的get、set方法作用:
Struts2中的get.set方法作用: 在Struts2中,客户端和服务器之间的数据传输全部要用到get.set方法:用set方法 ,可以将表单中的值存入Action类.通过Struts2.0标签 ...
- 如何使用T-SQL备份还原数据库及c#如何调用执行? C#中索引器的作用和实现。 jquery控制元素的隐藏和显示的几种方法。 localStorage、sessionStorage用法总结 在AspNetCore中扩展Log系列 - 介绍开源类库的使用(一) span<T>之高性能字符串操作实测
如何使用T-SQL备份还原数据库及c#如何调用执行? 准备材料:Microsoft SQL Server一部.需要还原的bak文件一只 一.备份 数据库备份语句:user master backup ...
- python文件写中的f.flush()方法
f = open("input.txt", "w") f.write("aaaaaa") f.flush() #强行把缓冲区中的内容放到磁盘 ...
- js进阶 14-1 jquery的ajax系列中的load方法的作用是什么
js进阶 14-1 jquery的ajax系列中的load方法的作用是什么 一.总结 一句话总结:jQuery load()方法作用是从服务器加载数据,是一个简单但强大的AJAX方法. 1.load函 ...
随机推荐
- 部署基于JDK的webservice服务类
部署服务端 两个注解(@WebService @WebMethod).一个类(Endpoint) 首先新建JAVA工程ws-server 目录结构如下 在工程里新建一个接口,申明一个方法. packa ...
- Ruby操作VBA的注意事项和技巧(2):宏里调用和控制窗体以及窗体上的控件、不同workbook之间的宏互相调用
4.宏里调用并控制窗体以及窗体上的各种控件 1 Sub Criterion_Check() 2 If Workbooks.count = 0 Then '如果当前没有打开的工作薄的话需要发出警告 3 ...
- springday04-go1
springmvc02:1.创建项目,导入jar包 2.复制xml文件到src下 3.在web.xml中配置DispatcherServlet(代码一致) <?xml version=" ...
- linux下MYSQL备份与恢复
1.用命令实现备份 数据库备份是很重要的.如果定期做好备份,这样就可以在发生系统崩溃时恢复数据到最后一次正常的状态,把损失减小到最少.MySQLl提供了一个mysqldump命令,我们可以用它进行数据 ...
- ligerui_实际项目_001:利用ligerLayout、ligerAccordion实现可折叠的菜单效果
效果:利用ligerLayout.ligerAccordion实现可折叠的菜单效果 可能用到的js.css.images等,可到官网下载: 第01步:引入相应的文件 <head><l ...
- mysql bin log日志
装mysql,运行一段时间后,在mysql目录下出现一堆类似mysql-bin.000***,从mysql-bin.000001开始一直排列下来,而且占用了大量硬盘空间,高达几十个G. 对于这些超大空 ...
- highcharts 实例
<script src="../../Scripts/jquery-1.7.2.min.js" type="text/javascript">< ...
- C++中关于无法解析的外部符号问题LNK2019问题的总结
网上一般有很全面的解决方法,最近恰好本道长也遇到了这种问题,也恰好解决了,这种问题应该算作配置问题,而非程序本身问题,多数是因为接手了生疏的程序导致,此问题看上去很简单,但木有经验的话很 ...
- 代码坏味道特别篇————Long parameter List 过长的参数列表
刚开始学习编程时,老师说:讲方法所需要的东西都以参数的形式传入,那是我们好像还没学OO这个东东,要不就弄成全局变量,我擦,全局变量可牛逼了,刚开始学习的时候我们都在用全局变量,可是后来工作了,经理说不 ...
- hadoop文件系统FileSystem详解 转自http://hi.baidu.com/270460591/item/0efacd8accb7a1d7ef083d05
Hadoop文件系统 基本的文件系统命令操作, 通过hadoop fs -help可以获取所有的命令的详细帮助文件. Java抽象类org.apache.hadoop.fs.FileSystem定义了 ...