/* 参数一:原文本 参数二:分割符 参数三:用于存放的数组变量 参数四(可空):是否清除原来数组内容 默认true 返回值:分割后的数组成员数 */ int 分割文本(const CString &要被分割的文本, const CString &分割符, CStringArray &用于存放数组的变量,BOOL 清除原数组=true){ if (清除原数组){用于存放数组的变量.RemoveAll();} int 开始位置 = 0; int 找到位置 = 0; int 分隔符长度 = 分割符.GetLength(); int 上次找到位置 = 0 - 分隔符长度; CString tem; while (找到位置 != -1){ 找到位置 = 要被分割的文本.Find(分割符, 开始位置 + 1); if (找到位置 != -1) { tem = 要被分割的文本.Mid(上次找到位置 + 分隔符长度, 找到位置 - 上次找到位置 - 分隔符长度); 用于存放数组的变量.Add(tem); 上次找到位置 = 找到位置; 开始位置 = 找到位置; } else{ tem = 要被分割的文本.Mid(上次找到位置 + 分隔符长度, 要被分割的文本.GetLength() - 上次找到位置 - 分隔符长度); if (tem.GetLength()>0) { 用于存放数组的变量.Add(tem); } } } return 用于存放数组的变量.GetSize(); }