MFC中如何分割CString類型的數據


 

MFC中有一個庫函數 Tokenize();

函數原型:CStringT Tokenize( PCXSTR pszTokens , int& iStart ) const;

這個函數可以根據某個字符將CString分隔開。

事先設定好緩沖區,被分割之后的字符串需要一個緩沖區來存儲,比如容器,或者字符數組。

如果不知道會划分多少段,建議使用容器或者動態字符數組來當緩沖區。

循環次數是要進行分割的段落數,比如你想要分割成3段,就設定3.

例子:

1 CString str="abc,def,ghi"; //需要分割的字符串
2 vector<CString>Temp;      //分割之后的每個部分,分別存入容器中
3 int pos = 0;                       //函數需要的標記參數
4 for(int i = 0; i < 3; i++)
5     {
6       Temp.push_back(str.Tokenize(","),pos);
7       //如果輸出temp中的每個元素,則分別輸出abc def ghi
8     }

輸出結果:

cout << Temp[0] << endl;
cout << Temp[1] << endl;
cout << Temp[2] << endl;

//打印:      abc
//             def
//             ghi

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM