如:有一文件名为:1.txt
内容如下:
 dlfjjfldslfjdsfjfjjjjjjjjjjjjjjjjjjjkfjdljfldsfldsl
设我有一个form 上有一个button1,请问如何实现点击button1后,1.txt内的jjjjjjjjjjjjjjjjjjj会自动删除,并保存?

解决方案 »

  1.   

    var 
      F: TStrings;
    begin
      F := TStringList.Create;
      F.LoadFromFile('c:\1.txt');
      F.Text := StringReplace('jjjjjjjjjjjjjjjjjjj', F.Text, []);
      F.SaveToFile('c:\1.txt');
      F.Free;  
    end;————————————————————————————————————
    宠辱不惊,看庭前花开花落,去留无意;毁誉由人,望天上云卷云舒,聚散任风。
    ————————————————————————————————————
      

  2.   

    这样不行,若是
    kkkk-----klfjdlsjflkdjf
    kkkk---oiejfldsjafl
    kkkk----sjfldsfjdfjdsjflfjdfdhgdalgfd很多行时,要把kkkk后的都删了,你怎么办(你事先不知道kkkk后有什么字符串的)?
      

  3.   

    这样吧,换个说法,在文本1.txt中
    fkkfkdsljfdkfsjfldsjfls AAA fdjfldkslfjlsfj BBB fdsfdfas AAA dsfsdf dfs DDD dfsafAAA,BBB,CCC,DDD为标识符,如何实现把只AAA后的内容删去?
      

  4.   

    那就先找到AAA这个标识符的位置啊,再把后面的删掉不就好了
      

  5.   

    这样的话只要把  lxpbuaa(桂枝香在故国晚秋) 兄的代码稍做修改就可以了。
    var 
      F: TStrings;
      i,c:integer;
      s:string;
    begin
      F := TStringList.Create;
      F.LoadFromFile('c:\1.txt');
      i:=pos('aaa',f.text)+3;
      c:=pos('bbb',f.text)-i;
      s:=f.text;
      delete(s,i,c);
      f.text:=s;
      F.SaveToFile('c:\1.txt');
      F.Free;  
    end;
      

  6.   

    哦,是用delete()啊,谢谢了,我试试看。
      

  7.   

    用delete(s,i,c);也不行啊,报错啊:constant object can't not be passed as var 
    parameter
    怎么办??问题还未曾解决啊?