CString和CByteArray的相互转化

转载地址:http://blog.sina.com.cn/s/blog_590be5290100euaq.html(略有改动)

CString转化为CByteArray:

CString str="我的世界 abcdefg";
 CByteArray ba;
 int nSize = str.GetLength() * sizeof(CHAR);
 ba.SetSize(nSize);
 lstrcpy((LPTSTR)ba.GetData(),str);

CString str="我的世界 abcdefg";
 CByteArray ba;
 int nSize = str.GetLength() * sizeof(CHAR);ba.SetSize(nSize+1);
 memcpy( ba.GetData(), str.GetBuffer(nSize), nSize );
 str.ReleaseBuffer();


 

再将CByteArray转化为CString:

nSize=ba.GetSize();

 CString str2('x',nSize);
 for(int i=0;i   str2.SetAt(i,ba.GetAt(i));

CString str2;
 char ch;
 for(int i=0;i {
  ch=ba[i];
  str2+=ch;
 }

你可能感兴趣的:(C/C++)