常用:
CString Left(int nCount)const; //从左边1开始获取前 nCount个字符
CString Mid(int nFirst)const; //从左边第 nCount+1个字符开始,获取后面所有的字符
CString Mid(int nFirst, int nCount)const; //从左边第 nFirst+1 个字符开始,获取后面nCount个字符
CString Right(int nCount)const; //从右边1开始获取从右向左前 nCount个字符
void MakeUpper(); //将CString字符转化为一个大写的字符串。
void MakeLower(); //将CString字符转化为一个小写的字符串。
//注:在函数后面加 const 的意思:若一个类声明了一个常量对象, 这个对象只能使用后边带 const 这个的方法.
如:
CString a, b;
a = "123456789";
b = a.Left(4); //值为:1234
b = a.Mid(3); //值为:456789
b = a.Mid(2, 4); //值为:3456
b = a.Right(4); //值为:6789
在一个较大的字符串中查找字符或子字符串
int Find(TCHAR ch) const;
int Find(LPCTSTR lpszSub) const;
int Find(TCHAR ch, int nStart) const; intFind(LPCTSTR pstr, int nStart) const;
返回值:返回此CString对象中与需要的子字符串或字符匹配的第一个字符的从零开始的索引;如果没有找到子字符串或字符则返回 - 1。
参数:ch要搜索的单个字符。 lpszSub要搜索的子字符串。 nStart字符串中开始搜索的字符的索引,如果是0,则是从头开始搜索。如果nStart不是0,则位于nStart之前的字符不包括在搜索之内。 pstr指向要搜索的字符串的指针
如:
CString s("abcdef");
int n = s.Find('c'); // n = 2
int f = s.Find( "de" ) ; // 结果 f = 3
两个CString对象比较
//int Compare(LPCTSTR lpsz)const;
//int CompareNoCase(LPCTSTR lpsz) const;
//返回值:若内容完全一致则返回0;若小于lpsz,则返回为 - 1;若大于lpsz,则返回1。
//区别:CompareNoCase区分大小写比较str与lpsz的第一个相异字符,
//如str.CompareNoCase(lpsz);
//若str字符比lpsz大,则字符串str大于lpsz,返回1;
//若str该处的字符比lpsz小,则字符串str小于lpsz,返回 - 1;
//str与lpsz内容完全一致则返回0
如:
CString k("ABC");
CString k1("abc");
if (k.Compare(k1))
{
int ref = 0;//相同
}
else
{
if (k.Compare(k1) == 1 )
{
int ref = 1;//k > k1
}
else if (k.Compare(k1) == -1)
{
int ref = 1;//k < k1
}
}
if (k.CompareNoCase(k1))
{
//内容、大小写都相同
}
else
{
//不同
}