原文:http://www.cnblogs.com/yezhenhan/archive/2012/09/10/2678690.html
import java.io.File;
import java.io.FileOutputStream;
import java.io.*
;
public class FileTest {
public FileTest() {
}
public static void main(String[] args) {
FileOutputStream out =
null;
FileOutputStream outSTr =
null;
BufferedOutputStream Buff=
null;
FileWriter fw =
null;
int count=1000;
//写文件行数
try {
out =
new FileOutputStream(
new File(“C:/
add.txt”));
long begin =
System.currentTimeMillis();
for (
int i = 0; i < count; i++
) {
out.write(“测试java 文件操作\r\n”.getBytes());
}
out.close();
long end =
System.currentTimeMillis();
System.out.println(“FileOutputStream执行耗时:” + (end - begin) +
” 豪秒”);
outSTr =
new FileOutputStream(
new File(“C:/
add0.txt”));
Buff=
new BufferedOutputStream(outSTr);
long begin0 =
System.currentTimeMillis();
for (
int i = 0; i < count; i++
) {
Buff.write(“测试java 文件操作\r\n”.getBytes());
}
Buff.flush();
Buff.close();
long end0 =
System.currentTimeMillis();
System.out.println(“BufferedOutputStream执行耗时:” + (end0 - begin0) +
” 豪秒”);
fw =
new FileWriter(“C:/
add2.txt”);
long begin3 =
System.currentTimeMillis();
for (
int i = 0; i < count; i++
) {
fw.write(“测试java 文件操作\r\n”);
}
fw.close();
long end3 =
System.currentTimeMillis();
System.out.println(“FileWriter执行耗时:” + (end3 - begin3) +
” 豪秒”);
} catch (Exception e) {
e.printStackTrace();
}
finally {
try {
fw.close();
Buff.close();
outSTr.close();
out.close();
} catch (Exception e) {
e.printStackTrace();
}
}
}
}
以下结果经过多次执行,取常出现的数据,由于只是简单比较,不做详细统计。 当count=1000的,即写文件1000行的时候,写出的文件大小为18.5KB: FileOutputStream执行耗时:46 豪秒 BufferedOutputStream执行耗时:31 豪秒 FileWriter执行耗时:15 豪秒 2.当count=10000的,即写文件10000行的时候,写出的文件大小为185KB: FileOutputStream执行耗时:188 豪秒 BufferedOutputStream执行耗时:32 豪秒 FileWriter执行耗时:16 豪秒 3.当count=100000的,即写文件100000行的时候,写出的文件大小为1856KB: FileOutputStream执行耗时:1266 豪秒 BufferedOutputStream执行耗时:125 豪秒 FileWriter执行耗时:93 豪秒 4.当count=1000000的,即写文件1000000行的时候,写出的文件大小为18555KB: FileOutputStream执行耗时:12063 豪秒 BufferedOutputStream执行耗时:1484 豪秒 FileWriter执行耗时:969 豪秒
转载请注明原文地址: https://ju.6miu.com/read-35611.html