UDP套接字传输汉字出现乱码,该怎么处理

UDP套接字传输汉字出现乱码
本帖最后由 VisualEleven 于 2013-08-28 11:46:53 编辑
做的一个CS模式的程序,服务器用MFC编写,客户端用C++编写,
采用UDP传输数据,但是服务器接收中文数据时出现乱码
客户端发送数据:
string sendBuf;
cin>>sendBuf;
const char *sendTextBuf=sendBuf.c_str();
sendto(sockClient,sendTextBuf,strlen(sendTextBuf)+1,0,(SOCKADDR*)&addrSrv,len);

服务器接收数据
recvfrom(sockSrv,recvBuf,100,0,(SOCKADDR*)&addrClient,&len);
CString str;
str.Format("%s",recvBuf);

------解决方案--------------------
好吧,你发送用 string, 接受也用 string 好吧

现在mfc默认是unicode编码 ,你非要CString 也要这么用
CString str;
str = (char *)recvBuf;

自己写服务端客户端无所谓是不是utf-8编码