字符串问题:怎样把一个有分隔符的字符串分解并读到StringList中?

cdws222 2002-09-13 10:25:56
比如:
AnsiString aaa="1111111;222222;33;aaa;bbbbbbbbbb";
TStringList bbb=new TStringList;
(方法)

结果是这样
bbb->String[0]="1111111";
bbb->String[1]="222222";
bbb->String[2]="33";
bbb->String[3]="aaa";
bbb->String[4]="bbbbbbbbbb";

请大家多多帮忙!
一万分感谢

(主要是想知道TStringList有没有这种方法)
...全文
71 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
chenxz 2002-09-14
  • 打赏
  • 举报
回复
用StringReplace把“;”换成空格,再用sscanf
teatool 2002-09-14
  • 打赏
  • 举报
回复
TStringList *abc=new TStringList;
AnsiString a="aaa,bbb,ccc";

abc->CommaText=a;
airspace 2002-09-13
  • 打赏
  • 举报
回复
在VBSCRIPT中有一个函数Split函数可以达到你的要求,在CB中我还不知道
风-君子 2002-09-13
  • 打赏
  • 举报
回复
AnsiString aaa="1111111;222222;33;aaa;bbbbbbbbbb";
TStringList bbb=new TStringList;
AnsiString c = aaa;
long lPos;

while(c != "")
{
lPos = c.Pos(";")
if(lPos != 0)
{
bbb->Add(c.SubString(1,lPos - 1));
c = c.SubString(lPos + 1, c.Length() - lPos);
}
else
{
bbb->Add(c);
c == "";
}

}
whitelion 2002-09-13
  • 打赏
  • 举报
回复
写一个小函数吧
aaa.Pos(";");
while ()
{
bbb->String[i]=aaa.SubString();
aaa=aaa.SubString();
}
cdws222 2002-09-13
  • 打赏
  • 举报
回复
哦?真的没有直接的方法吗?

谢谢您的关注
(试一下支不支持html <p><a href="http://teatool">123</a>)
gangAndgang 2002-09-13
  • 打赏
  • 举报
回复
好像没有直接的方法,不过可以用取子串的方法将各个子串取出来,再添加进stringlist中

13,826

社区成员

发帖
与我相关
我的任务
社区描述
C++ Builder相关内容讨论区
社区管理员
  • 基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧