求详细解释 我自己理解的不知道对不对
import java.io.*;
class SystemoutDemo 
{
	public static void main(String[] args) throws 
IOException
	{
		BufferedReader br=new BufferedReader(new InputStreamReader(System.in));
		BufferedWriter bw=new BufferedWriter(new OutputStreamWriter(new FileOutputStream("out.txt")));
		String str=null;
		while((str=br.readLine())!=null)
		{
			if(str.equals("over"))
				break;
			bw.write(str);
			bw.newLine();
			bw.flush();
		}
		
		
	}
}
              
------解决方案--------------------package resources;
import java.io.*;
class SystemoutDemo {
	public static void main(String[] args) throws IOException {
		BufferedReader br = new BufferedReader(new InputStreamReader(System.in));//从控制台输入,并用装饰类BufferedReader修饰
		BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(new FileOutputStream("c:\\out.txt")));//准备写入的文件路径,使用BufferedWriter装饰
		String str = null;
		while ((str = br.readLine()) != null) {
			if (str.equals("over"))//如果输入的字符是“over”				        break;//结束控制台输入,跳出循环
			bw.write(str);//写入文件
			bw.newLine();
			bw.flush();
		}
		bw.close();//关闭输出流
		br.close();//关闭输入流
	}
}
------解决方案--------------------
因为BufferedRead有个readLine()方法,直接读一行方便啊,还可以解决输入中文乱码的问题
存入out.txt中用的还是字节流BufferedWriter,哪转换成字节流了。。
------解决方案--------------------
不使用BufferedRead,你怎么行读取?InputStreamReader有readLine方法吗?
------解决方案--------------------其实你是使用缓冲流将基本流包装了下!
使用缓冲流的好处是,能够更高效的读写信息,原理是将数据先缓冲起来,然后一起写入或者读取出来,而不是一个一个字节写入或者读取!