vc++处理用一个特定符号隔开的数据文本方法

这个方法我一直在用,但是一直没有搞明白他的原理。今天在这里好好分析一下吧。我在源码中注释的很详细了!这次分析假定用逗号做分隔的,其他的也同理,空格,冒号等。

CString strText;

CStringArray arr;//用来放得到的数据段,这是一个数组

strText ="1,张三,程序员,2013年入职,C++";//假定要分析的一行数据

while(1)
{
	int pos = strText.Find(L",");//标记出找到的第一个逗号在strText中的以0为初始索引的序号。找不到返回-1值
	if(pos >= 0)
	{
		arr.Add(strText.Left(pos)); //把左边的第一段放到数组中
		strText = strText.Mid(pos+1); //把除第一段剩下的放到strText中
	}
	else
	{		
		//找不到逗号,说明这是最后一个字段了
		arr.Add(strText);
		//strText = "";
		break; //跳出while(1)循环!
	}
}

ok,that’s it。我反正是明白了。你呢

Leave a Reply