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);