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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 在学野马 中级黑马   /  2014-10-15 14:32  /  3273 人查看  /  1 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

5黑马币

public class Add {
        static int linenum=1;
        public static void main(String[] args) throws Exception {
                // TODO Auto-generated method stub
                BufferedReader bfr=new BufferedReader(new FileReader("c:\\stud.txt"));
                BufferedWriter bfw=new BufferedWriter(new OutputStreamWriter(System.out));
                int len=0;
                while((len=bfr.read())!=-1){
                        bfw.write(num(len));
                        bfw.newLine();
                        bfw.flush();
                       
                }
                bfr.close();
                bfw.close();
        }
        private static String num(int len) {
                StringBuilder sb=new StringBuilder();
                if(len=='\n')
                        linenum++;
                sb.append(linenum+len);
                return sb.toString();
        }
}
有很大问题。。。

最佳答案

查看完整内容

用BufferedReader类中的readLine()方法比较好,因为是整行读取的 所以可以写成这样

1 个回复

倒序浏览
用BufferedReader类中的readLine()方法比较好,因为是整行读取的
所以可以写成这样
  1. package com.util;
  2. import java.io.*;
  3. /*
  4. * 通过缓冲区复制一个。Java文件
  5. */
  6. public class CopyTextByBuf {
  7.         public static void main(String args[]) {
  8.                 int x=0;
  9.                 BufferedReader bufr = null;
  10.                 BufferedWriter bufw = null;
  11.           try {
  12.                         bufr = new BufferedReader(new FileReader("c:\\stud.txt"));
  13.                         bufw = new BufferedWriter(new OutputStreamWriter(System.out));
  14.                         String line = null;
  15.                         while((line=bufr.readLine())!=null)
  16.                         {
  17.                        
  18.                         x++;
  19.                                 bufw.write(x+line);
  20.                                 bufw.newLine();
  21.                                 bufw.flush();

  22.                         }
  23.                 } catch (IOException e) {
  24. throw new RuntimeException("读写失败");
  25.                 }               
  26.           finally{
  27.                  
  28.                           try {
  29.                                   if(bufr!=null)
  30.                                         bufr.close();
  31.                                 } catch (IOException e) {
  32.                                         throw new RuntimeException("读取关闭失败");
  33.                                 }
  34.                   
  35.                           try {
  36.                                   if(bufw!=null)
  37.                                         bufw.close();
  38.                                 } catch (IOException e) {
  39.                                         throw new RuntimeException("写入关闭失败");
  40.                                 }
  41.           }
  42.         }

  43. }
复制代码

回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马