delphi中的文件操作问题!100分我的程序需要修改一个文本文件,但是要么只能读他,要么只能写。我又不想用另一个文件做中转,应该怎么做!例如:我的文本如下:info.txt
abcdefghigklmnj
123123123123123
QWEWERERTREYRTY
abcdefghijklmno
123456789012345
end我想把第2行删除掉,插入321321321321321
但是要进行write操作之前,就必须rewrite(file)(就把文件内容删除光了),或者append(file)(怎么能在文件最后面追加)
有没有什么办法,能定位到第2行那里?
好象用到内存影射问题,但不知道怎么用,请指点。在线等候回答---100 分献上。

解决方案 »

  1.   

    试试先把文件全读出来,再rewrite,重写过程中进行修改.
      

  2.   

    可以这样:
    var
      strlistFile: TStringList;
    begin
      strlistFile := TStringList.Create;
      strlistFile.LoadFromFile('a.txt');
      if (strlistFile.Count > 0) then
        strlistFile.Delete(1);//删除第二行,注意,这里是1
      strlistFile.SaveToFile('a.txt');
      strlistFile.Free;
    end;
      

  3.   

    或这样:
    var
      strlistFile: TStringList;
    begin
      strlistFile := TStringList.Create;
      strlistFile.LoadFromFile('a.txt');
      if (strlistFile.Count > 0) then
        if strlistfile.count=1 then rewrite 。
      strlistFile.SaveToFile('a.txt');
      strlistFile.Free;
    end;
      

  4.   

    我在外面上,没delphi,帮忙说详细点,谢谢