A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© ccyznhy 中级黑马   /  2013-8-23 10:27  /  1116 人查看  /  4 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 forward 于 2013-8-26 21:29 编辑

下面的代码怎样通过缓冲流来实现写效率的提高?球解决啊!        
            public static void main(String[] args) throws IOException{
                // TODO Auto-generated method stub
                FileWriter fw=new FileWriter("c:\\ccy.txt");
                fw.write("dafniaonfioanf\r\ndfnainfladnfio");
                fw.close();
                FileReader fr=new FileReader("c:\\ccy.txt");
                char[] buf=new char[1024];
                int num=0;
                while((num=fr.read(buf))!=-1){
                        System.out.print(new String(buf,0,num));
                }
        }

评分

参与人数 1技术分 +1 收起 理由
EYE_SEE_YOU + 1

查看全部评分

4 个回复

倒序浏览
你看一下

1.jpg (45.3 KB, 下载次数: 12)

缓冲

缓冲

评分

参与人数 1技术分 +1 收起 理由
EYE_SEE_YOU + 1

查看全部评分

回复 使用道具 举报
public static void main(String[] args) throws IOException{
                //流的高效加一个BufferedWriter和BufferedReader
                BufferedWriter fw=new BufferedWriter(new FileWriter("c:\\ccy.txt"));
        fw.write("dafniaonfioanf\r\ndfnainfladnfio");
        fw.close();
       BufferedReader  fr=new BufferedReader(new FileReader("c:\\ccy.txt"));
       String str = null;
        while((str = fr.readLine()) != null){
               fw.write(str);
               fw.newLine();
               fw.flush();
        }
        fr.close();
        fw.close();
        }

评分

参与人数 1技术分 +1 收起 理由
EYE_SEE_YOU + 1

查看全部评分

回复 使用道具 举报
首先  你在这一句之前FileReader fr=new FileReader("c:\\ccy.txt");     应该加一句 fw.flush();   这样你才能在控制台打印出来。
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;

public class K {
        public static void main(String[] args) {
                BufferedReader br=null;
                BufferedWriter bw=null;
                try {
                        bw=new BufferedWriter(new FileWriter("c:\\ccy.txt"));
                        bw.write("dafniaonfioanf\r\ndfnainfladnfio");
                } catch (IOException e) {
                        e.printStackTrace();
                } finally {
                        try {
                                if (bw != null)
                                        bw.close();
                        } catch (IOException e) {
                                e.printStackTrace();
                        }               
                }
               
                try {                       
                        br=new BufferedReader(new FileReader("c:\\ccy.txt"));
                        String line=null;
                        while((line=br.readLine())!=null){
                                System.out.println(line);
                        }
                } catch (IOException e) {
                        e.printStackTrace();
                } finally {                       
                        try {
                                if (br != null)
                                        br.close();
                        } catch (IOException e) {
                                e.printStackTrace();
                        }
                }               
        }

}

评分

参与人数 1技术分 +1 收起 理由
杨增坤 + 1

查看全部评分

回复 使用道具 举报
亲  如果问题已解决请把类别改为已解决,谢谢。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马