关于BufferedWriter的一些小问题

1) 首先,如果要使用BufferedWriter,一定会要用到FileWriter

毕竟它是以FileWriter为parameter(参数)的!


2) 使用的BufferedWriter的效率要比FileWriter高很多

原因很简单,前者有效的使用了缓存器

将缓存写满以后(或者close以后)才输出到文件中

(也就是忘记close的话,文件是没有写入的!)


3)记得先开的后关!否则会报异常!!!!

package diu;

import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.File;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;

public class Test {
    public static void main(String[] args) throws IOException {
		File f = new File("D:/1.txt");
		FileWriter r = new FileWriter(f);
		BufferedWriter b = new BufferedWriter(r);
		
		b.write("nihao");
		
		
		r.close();
		b.close();
	}
}

这里先开的先close了

会有异常

Exception in thread "main" java.io.IOException: Stream closed
	at sun.nio.cs.StreamEncoder.ensureOpen(Unknown Source)
	at sun.nio.cs.StreamEncoder.write(Unknown Source)
	at java.io.OutputStreamWriter.write(Unknown Source)
	at java.io.BufferedWriter.flushBuffer(Unknown Source)
	at java.io.BufferedWriter.close(Unknown Source)
	at diu.Test.main(Test.java:19)


猜你喜欢

转载自blog.csdn.net/binguola/article/details/79872408