例如我要把A文件写到B文件,写的过程中更改A文件中某行的内容,但写入B文件后的格式要和A一样。
A文件中有空行,也要写入到B文件中。可是我下面的例子写完了后,所有的行全部连在了一起,请大家帮帮我。下面是我写的例子:
import java.io.*;
public class rct{
    public static void main(String[] args){        
     String filePath="c:/abc.txt";
     int indexx=filePath.lastIndexOf("/");
     String outPath="c:/已改的"+filePath.substring(indexx+1,filePath.length());     FileReader fr=null;
     BufferedReader br=null;
     FileWriter fw=null;
     BufferedWriter bw=null;
     String dataFormat="\\d{2}";
     String line=null;
try{
            fr=new FileReader(filePath);
            br=new BufferedReader(fr);
            fw=new FileWriter(outPath);
            bw=new BufferedWriter(fw);
            while((line=br.readLine())!=null){
                if(line.matches(dataFormat)){
                 System.out.println(line);
                 bw.write(line+"aaaaaaaaaaa");
                }else{
                 bw.write(line);
                }
            }
         }catch(Exception e){
             e.printStackTrace();
         }
    }
}

解决方案 »

  1.   

    if(line.matches(dataFormat)){
        System.out.println(line);
        bw.write(line+"aaaaaaaaaaa");
        bw.newLine();//~~~~~~~~~~~~~~~~~~~~~~回车,换行
    }else{
        bw.write(line);
        bw.newLine();//~~~~~~~~~~~~~~~~~~~~~~回车,换行
    }
    加上上述两句话试一试
      

  2.   

    谢谢 DreamDragon_NEU(梦龙) ,已经解决了,这就结贴。
      

  3.   

    readLine()本身就是按行读取,如果读到的是一个空行,那么,会原封不动的照写到另一个文件里去
    只不过,在写的时候,虽然是按照源文件每行写的,却不会加上回车换行,所以需要自己手动添加newLine(),进行换行~~~
      

  4.   

    怎么结不了贴,报什么“贴子回复次数大于跟给分次数”
    我想给
    DreamDragon_NEU(梦龙)  40
    TomyGuan(Tomy)      10
    就报上面的错