首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > C# >

这就是C#的BUG呢还是小弟我不懂原理?socket返回的字符串无法正常运用字符串的运算符"+"

2012-09-28 
这就是C#的BUG呢还是我不懂原理??socket返回的字符串无法正常运用字符串的运算符+!C# codeSocket socket

这就是C#的BUG呢还是我不懂原理??socket返回的字符串无法正常运用字符串的运算符"+"!

C# code
                    Socket sockets = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);                    sockets.Connect(IPAddress.Parse("220.181.29.160"), 80);  //注:可以换成任意有回复的ip或端口                    byte[] bdata = Encoding.Default.GetBytes("get");   //注:可以换成任意有回复的应用                    sockets.Send(bdata);                    int bufLen = sockets.ReceiveBufferSize;                    byte[] bData = new byte[bufLen];                    int DataLen = sockets.Receive(bData);                    string reStrData = Encoding.ASCII.GetString(bData, 0, bData.Length);                    sockets.Close();                    MessageBox.Show(reStrData + "BBBBBB");  //问题:6个"B"没有显示,为何? 注意:B可换成任意字符串/MessageBox也可以换成任意控件或其他类型                    MessageBox.Show("BBBBBB" + reStrData);  //6个"B"或其他字符串在前面时,正常显示出结果了




第一个 MessageBox 不加后面的字符串,这里用6个B举例。。。。restrdata最后面时正常的,我不懂为何,哪位好朋友能解释下原因吗?试过先string tmpstr=reStrData; 再 tmpstr+="BBBBBB";结果也是不行,反正是restrData后面的字符串都不显示。。。。
这鬼异的问题困扰我一年多了,半夜都睡不好觉起来发贴咨询下好朋友们!望不吝赐教,感激!

[解决办法]
字符串有个结束标志\0...

热点排行