JAVA 
IOException 出错,求指教
package Saolei_main1;
import java.awt.*;
import javax.swing.*;
import java.io.*;
public class Flc {
	public static void main(String[] args)
	{
		String str="fdsafdsaf";
		FileWriter fw=null;
		BufferedWriter bw=null;
		try {
			fw=new FileWriter("d:\\a.txt");
			bw=new BufferedWriter(fw);
			bw.write(str);			
		} catch (Exception e) {
			// TODO: handle exception
			e.printStackTrace();
		}		
		finally
		{
			try {
				fw.close();
				bw.close();
			} catch (Exception e2) {
				// TODO: handle exception
				e2.printStackTrace();
			}
		}		
	}
}
一运行会出现:
java.io.IOException: Stream closed
	at sun.nio.cs.StreamEncoder.ensureOpen(StreamEncoder.java:26)
	at sun.nio.cs.StreamEncoder.write(StreamEncoder.java:99)
	at java.io.OutputStreamWriter.write(OutputStreamWriter.java:190)
	at java.io.BufferedWriter.flushBuffer(BufferedWriter.java:111)
	at java.io.BufferedWriter.close(BufferedWriter.java:246)
	at Saolei_main1.Flc.main(Flc.java:26)
文件里面什么都没有写入,如果文件里面有东西,还会被清空,求指教!!!!!!!!
------解决方案--------------------fw.close();
bw.close();
顺序改一下  
先关bw  再关fw
不然的话buffer里的字符真正写的时候fw已经关闭了
------解决方案--------------------只需要
bw.close();
把
fw.close();删了吧。
因为在BufferedWriter的close里会把fw close掉的。
也是你这里出错的原因,因为你先把fw close了,所以在BufferedWriter的close里再次
试图关闭一个已经关闭的流就java.io.IOException: Stream closed了。
参考:BufferedWriter close 的代码。
public void close() throws IOException JavaDoc {
  synchronized (lock) {
        if (out == null)
        return;
        flushBuffer();
        out.close(); //此处就是你的fw
        out = null;
        cb = null;
    }