比如文件是这个样子的stra 131223  ffff
strb 333566  dddd
如果我想把strb后面的333566用另一个数据替换掉,是不是必须把该文件的所有类容先读出,然后修改后重新读入文件?如果这样的话,文件很大的话岂不是很费时?

解决方案 »

  1.   

    你是要替换333566还是整个333566的列?
    如果这样的话需要读文件,而且需要使用正则表达式将第二列的数据去不取出来,然后根据你的要求替换。
    如果这是单一的替换333566,一行一行的读然后使用equals比较,找到的话就不用读了啊。
    不知道楼主是什么意思?
      

  2.   

    RandomAccessFile类有文件指针概念的,file pointer
    通过seek方法设置 之后的写操作应该可以实现了 应该是覆盖的
      

  3.   

    RandomAccessFile 类吧,一行一行的读,每读一行出来判断是否含有333566字符串,如果有就替换掉,
    然后文件指针设回当前行写进去。
      

  4.   

    如果只改第一个就用RandomAccessFile可以精准定位。