关于CString的一个问题 我从数据库中取出的整型数据存放在CString的对象中,数据形式为“12 22 345 421 5...”,数据间有空格请问怎样将所有数据取出并存放到整型数组中? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 有一个写好的函数,不过用的是stl的string,你可以参考下/*** 将一个字符串根据分隔符分成若干部分* @param[in] szSrc 待解析的字符串* @param[in] szSeperator 分隔符* @param[out] vecPart 存放各子字符串的vector* @return void*/void SeperateString(LPCTSTR szSrc, LPCTSTR szSeperator, vector<tstring>& vecPart){ vecPart.clear(); size_t nPos = 0; tstring strSrc = szSrc; while ( !strSrc.empty() ) { nPos = strSrc.find(szSeperator); if (nPos != tstring::npos) { vecPart.push_back(strSrc.substr(0, nPos)); strSrc = strSrc.substr(nPos + 1); } else break; } if (!strSrc.empty()) vecPart.push_back(strSrc);} 分割字符串可以考虑用 strtokhttp://msdn.microsoft.com/en-us/library/2c8d19sb(VS.71).aspx字符串转整型用atoihttp://msdn.microsoft.com/en-us/library/yd5xkb5c.aspx 给你个简单的例子int a, b, c, d;CString str = _T("12 22 345 421");_stscanf(str, _T("%d %d %d %d"), &a, &b, &c, &d); CStringlist strTail;CString strSource//数据源CString rString;int i = 0;while(AfxExtractSubString(rString, strSource, i, _T(' '))){ i++; strTail.AddTail(rString);} MFC中SetPixel()与GetPixel()返回值问题 【100分 急求代码】VC连远程SQL Server数据库! 怎么获得用GetNextWindow找到的窗口对应的视图指针? 关于图象检索的界面设计 Media Player 6.4 DLL怎么结束运行状态? 编译器问题 warning C4101: 'logbuf' : unreferenced local variable 怎么解决? 能把对话框嵌入CView中吗? 请问如何读取文件里面所有内容到内存中,文件中有0x00字符???? 关于UDP发送接收的问题 CTabCtrl怎么在右边插入图标呢?
有一个写好的函数,不过用的是stl的string,你可以参考下
/**
* 将一个字符串根据分隔符分成若干部分
* @param[in] szSrc 待解析的字符串
* @param[in] szSeperator 分隔符
* @param[out] vecPart 存放各子字符串的vector
* @return void
*/
void SeperateString(LPCTSTR szSrc, LPCTSTR szSeperator, vector<tstring>& vecPart)
{
vecPart.clear(); size_t nPos = 0;
tstring strSrc = szSrc;
while ( !strSrc.empty() )
{
nPos = strSrc.find(szSeperator);
if (nPos != tstring::npos)
{
vecPart.push_back(strSrc.substr(0, nPos));
strSrc = strSrc.substr(nPos + 1);
}
else break;
} if (!strSrc.empty())
vecPart.push_back(strSrc);
}
http://msdn.microsoft.com/en-us/library/2c8d19sb(VS.71).aspx字符串转整型用atoi
http://msdn.microsoft.com/en-us/library/yd5xkb5c.aspx
CString str = _T("12 22 345 421");
_stscanf(str, _T("%d %d %d %d"), &a, &b, &c, &d);
CStringlist strTail;
CString strSource//数据源CString rString;
int i = 0;
while(AfxExtractSubString(rString, strSource, i, _T(' ')))
{
i++;
strTail.AddTail(rString);
}