与VB程序通过Socket交换信息

最近考虑把原来的VB程序用C#或者VC重写,原来的程序是C/S模式的socket应用。以前没涉及.Net的这个方面,如果边学边做,一下子都换掉服务端和客户端是不太现实的,要部分更换就需要先测试一下中文文字的传输是否兼容,编码会不会有问题。
首先是在VS2005中用VC生成简单的MFC App with winsock,然后发送和接受VB服务端的消息,包括中文。经测试,如果用MBCS(DBCS)模式就可以顺利发送和接受,用UNICODE模式就是乱码。
然后在VS2005中用C#生成简单的Win App,用 System.Net.Sockets发送和接收VB服务端的消息,包括中文。经测试,用gb2312编码就可以顺利发送和接收,发送和接受都要和byte[]之间转换。
string  sendMsg;
byte [] getBytes;
byte [] sendBytes  =  System.Text.Encoding.GetEncoding( " gb2312 " ).GetBytes(sendMsg);
string  getMsg = System.Text.Encoding.GetEncoding( " gb2312 " ).GetString(getBytes);

你可能感兴趣的:(与VB程序通过Socket交换信息)