var
list: TStrings;
begin
list := TStringList.Create;
end;在list中已经增加了下面数据
123ggw45
12gr345
12345然后我想再往list中追加几行数据
6789
ddv
gerwgtw追加后想要得到下面的结果:
123ggw45
12gr345
123456789 //注意这里,合并了的,而直接追加这里则是两行
ddv
gerwgtw

解决方案 »

  1.   

    123ggw45 
    12gr345 
    123456789 //这里没有什么特别的,为什么在这里合并了? 
    ddv 
    gerwgtw 
      

  2.   

    你首先要知道在哪行合并(估计这个只有你自己才知道),然后,在这行上直接为这行赋值为两个字符串连接后的值,下面的记录才add进去
      

  3.   

    意思是这样:
    123ggw45
    12gr345
    12345 
    6789
    ddv
    gerwgtw 
    这样就简单了,处理一下首尾,然后添加剩余的
      

  4.   

    var
    tmp : string;
    I,J:integer;
    begin
    list:=Tstringlist.create;
    list.Add('12345');
    I:=list.count-1;
    tmp:=list.Strings[I] + '6789';
    list.Add(tmp);  //这里添加的就是 123456789
    list.Move(I,I+1);  // 将 12345 那行 替换为 123456789 那行
    J:=list.Count-1;
    ShowMessage(list.Strings[J-1]); // 原来12345那行显示为  123456789
    end;
      

  5.   

    哪有这么麻烦啊Delphi(Pascal) codevar
    tmp : string;
    I,J:integer;
    begin
    list.Add('12345');
    //假于需要合并时
    list.strings[ii] =list.strings[ii] + '7899'; 
    end;
      

  6.   

    楼主..
    不知道是不是这样啊
    procedure TForm1.Button1Click(Sender: TObject);
    var
      list: TStrings;
    begin
      list := TStringList.Create;
      list.Append('123ggw45');
      list.Add('12gr345') ;
      list.Add('12345') ;
      Memo1.Lines:=list;
      list.Destroy;
    end;procedure TForm1.Button2Click(Sender: TObject);
    var
      list: TStrings;
    begin
      list := TStringList.Create;
      list.AddStrings(memo1.Lines);
      list.strings[list.Count-1]:=list.strings[list.Count-1]+Memo2.lines.Text;
      Memo1.Lines:=list;
      list.Destroy;
    end;
      

  7.   

    NAME  VALUE的用法。
    stringlist.add('123ggw45=');
    stringlist.add('12gr345 =');
    stringlist.add('12345=');读值可以通过stringlist.name[i] 读取当你赋第二个时 stringlist.value('12345'):=6789;
    stringlist.add('ddv=');
    stringlist.add('gerwgtw=');当你想读全部时  replace '='为''或者其他方法delete 什么的。就是你想要的了 
      

  8.   

    var
       Text1,Text2:String;
       list:TStrings;
    begin
       list := TStringList.Create;   Text1 :=  '123ggw45'#$0D#$0A'12gr345'#$0D#$0A'12345'#$0D#$0A;
       Text2 := '6789'#$0D#$0A'ddv'#$0D#$0A'gerwgtw'#$0D#$0A;   Delete(Text1,Length(Text1)-1,2);   list.Text := Text1 + Text2;   Memo1.Lines := list;
    end;