在MFC项目中,用到了mysql数据库。mysql数据库使用了string字符串,所以就需要进行CString和string字符串的相互转换。转换的中介就是CStringA。
CStringA是ASCII版本的CString。我们一般默认的项目字符集是Unicode,所以CString用的是CStringW。而string是ASCII字符集。所以转换就借助CStringA来实现。其实转换的方法可以有很多,这里只是提供了一种而已。
为了方便快速写代码,我这里包装成了函数,直接可以使用。我在项目里就封装为一个简单的字符串处理类。
下面是代码:
string CString2string(CString str)
{
CStringA strA;
strA = str;
string str_ret = strA.GetBuffer();
strA.ReleaseBuffer();
return str_ret;
}
CString string2CString(string str)
{
CString str_ret(str.c_str());
return str_ret;
}
转换很简单,建议先弄明白过程。明白了,你也可以直接拿来用。也可以自己随时写出来。或者可以写出更好的版本来。只是为了提供方便,就分享出来了。
像这样的小代码,写在这里,以后自己也可以随时查询,不用重复写小代码。