CString str=2016/05/30 11:29:05.744 9252 TRACE Test3 拆成
a=2016/05/30
b=11:29:05.744
c=9252
d=TRACE
e=Test3
2016/05/30空格11:29:05.744空格空格空格9252空格空格TRACE空格空格Test3
int i = 0;
CStringArray saItems;
for(CString sItem = sFrom.Tokenize(" ", i); i >= 0; sItem = sFrom.Tokenize(" ", i))
{
saItems.Add( sItem );
}
void Split(CString source, CStringArray& dest, CString division)
{
dest.RemoveAll();
int pos = 0;
int pre_pos = 0;
while( -1 != pos ){
pre_pos = pos;
pos = source.Find(division,(pos+1));
dest.Add(source.Mid(pre_pos,(pos-pre_pos)));
}
}
CString source是需要截取的原字符串,
CStringArray& dest 是最终结果的数组
CString division 是用来做分割符的字符串
问题我自己解决了,将字符串转为char类型逐个取出判断分割,在转回cstring
但是这么做,太辛苦了,大神们有高级些的方法没有?