删除文本文件中的一行,怎么做好呢?while((line = reader.readLine()) != null){
countLine ++;
if(countLine == lineNo){
//System.out.println(line);
}else{
writer.write(line);
writer.newLine();
}
}像这样用readLine去读写的话,文件大小会被改变
如果用read(byte[])又不方便找到对应的行。
哪位仁兄指点一下

解决方案 »

  1.   

    文件大小会变,无非就是换行符的问题,如果不妨碍使用,有什么关系呢?如果自己read读字节的话,直接拿'\r','\n'或'\r\n'来匹配行尾,这三个都是换行符。也不复杂。
      

  2.   

    嗯嗯。好像只有中文格式会出现换行符的导致的文件大小问题。
    如果文件大的话,相差还不小。
    还是拿readLine写了。read执行匹配速度似乎有点慢。
    谢谢蓝花+黄花兄的解答。祝你早日得到小红花
      

  3.   

    readLine读,写的时候要在每行的后面加上"\r\n"这样
      

  4.   

    你看,和你一起玩的人都有小红花了,你却没有。应该是这个原因吧。在家里试的时候,找的是几本好看的小说txt来试验,换了几种字符集结果都有错
    今天公司试的时候,找的几个日志文件实验,utf8下又没问题。
    这么说会不会觉得我很懒呢