首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ Builder >

TStringList里许多重复项。如何去掉

2012-02-07 
TStringList里许多重复项。怎么去掉如下:TStringList*slnewTStringList()sl- Strings[0] 0001 sl- S

TStringList里许多重复项。怎么去掉
如下:
    TStringList   *sl=new   TStringList()
      sl-> Strings[0]= "0001 ";
      sl-> Strings[1]= "0002 ";
      sl-> Strings[2]= "0003 ";
      sl-> Strings[3]= "0001 ";
      sl-> Strings[4]= "0002 ";
      sl-> Strings[5]= "0001 ";
      sl-> Strings[6]= "0002 ";


  去掉里面重复的值,生成新的TStringList
没有重复的值
      bl-> Strings[0]= "0001 ";
      bl-> Strings[1]= "0002 ";
      bl-> Strings[2]= "0003 ";

   


[解决办法]
自己做个循环判断一下
TStringList *sg = new TStringList; //先定义一个StringList 用来放不重复的记录


for(int i = 0; i < s1-> Count; i++)
{
if(sg-> IndexOf(s1-> Strings[i]) < 0)
sg-> Add(s1-> Strings[i]) );
else
continue;
}
sg里的内容就是你想要的
[解决办法]
TStringList *s1=new TStringList();
s1-> Add( "0001 ");
s1-> Add( "0002 ");
s1-> Add( "0003 ");
s1-> Add( "0001 ");
s1-> Add( "0002 ");;
s1-> Add( "0001 ");
s1-> Add( "0002 ");

TStringList *sg = new TStringList;


for(int i = 0; i < s1-> Count; i++)
{
if(sg-> IndexOf(s1-> Strings[i]) < 0)
sg-> Add(s1-> Strings[i]);
else
continue;
}
ShowMessage(sg-> Text);

热点排行