使用SOCKET通信的时候中文的问题 用Encoding.Default.GetString(buff); 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 其实只要把ENCODING变成DEFAULT就可以了 // sendbyte[] buf = System.Text.Encoding.GetEncoding("gb2312").GetBytes(strContent);// recvstrContent = System.Encoding.GetEncoding("gb2312").GetString(buf); .net中string缺省的编码是UTF16,ASCIIEncoding会导致字节的丢失,实际网络传输建议使用UTF8编码把string转换为byte[]来传输数据,其他编码容易导致byte[]数据的变大 Encoding kkk=Encoding.GetEncoding("GB2312");byte[] bytesend=kkk.GetBytes(this.tb2.Text);这时候用Socket传送 bytesend 便正常了。 System.Text.ASCIIEncoding.ASCII.GetString(buff,0,255);这得到的是ASCII编程呀!怎么可能显示中文。System.Text.ASCIIEncoding.Unicode.GetString(buff,0,255);应该可以了。 微软自带的reportviewer控件 画图表 如折线图问题 求教,C#下如何判断窗体有无加载? 2个datagridview的数据传递,不知道问题出在哪里,求助! net如何发布安装程序 急!C#中如何将 int 型转换成网络字节序?? 在线等......... VS 2005里有BUG管理这个功能吗? 需要大家的帮忙!!!! 如何减少刷新 notifyIcon 單擊顯示菜單 为什么更新多个图片的显示内容时,总是要全部更新完后才一起显示出来 为何添加WEB引用不成功? 请问Debug目录下和 Release目录下生成的EXE文件有何实质性区别
byte[] buf = System.Text.Encoding.GetEncoding("gb2312").GetBytes(strContent);
// recv
strContent = System.Encoding.GetEncoding("gb2312").GetString(buf);
byte[] bytesend=kkk.GetBytes(this.tb2.Text);这时候用Socket传送 bytesend 便正常了。
这得到的是ASCII编程呀!怎么可能显示中文。
System.Text.ASCIIEncoding.Unicode.GetString(buff,0,255);
应该可以了。