首页 新闻 会员 周边

C#有关汉字传递时出现乱码的问题,急···

0
悬赏园豆:50 [待解决问题]

 protected void Web_to_Server(string NewSet)

IPEndPoint IEP = new IPEndPoint(ServerIP, ServerPort);

Socket MySocket = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);

 MySocket.Connect(IEP);

string test= NewSet;

 byte[] ByteMessage;

 ByteMessage = Encoding.UTF8.GetBytes(test);

现在给参数NewSet赋值为“长江”,结果出现了乱码,如果参数是数字或者拼音,就不会出现乱码,在服务器端接收到的就是原来的赋值。

勇士victor的主页 勇士victor | 初学一级 | 园豆:152
提问于:2013-08-16 21:24
< >
分享
所有回答(3)
0

换个编码试试,服务端和客户端使用统一编码。

冲动 | 园豆:394 (菜鸟二级) | 2013-08-16 22:49

客户端和服务端都用的是UTF8编码的。。。

支持(0) 反对(0) 勇士victor | 园豆:152 (初学一级) | 2013-08-17 11:17
0

服务器端是怎么读取的?

参考博文:记录点滴(一)

dudu | 园豆:30994 (高人七级) | 2013-08-17 14:23

现在用的是一个调试助手软件模拟服务器。NetAssist这个软件

支持(0) 反对(0) 勇士victor | 园豆:152 (初学一级) | 2013-08-23 12:57
0

读取是一定有问题,否则不会有问题。分析此类问题,可以分析服务端收到的字节码,长江发过去有可能会有byte[4]或byte[8]的数组,一般是byte[8],你可以看看ascii编码,一般两位或四位组成一个汉字。

空明流光 | 园豆:106 (初学一级) | 2013-08-17 14:59
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册