我在客户端有这样一条发送信息语句: _NetworkStream.Write(Encoding.Unicode.GetBytes(textName.Text), 0, Encoding.Unicode.GetBytes(textName.Text).Length);在服务端有这样一条语句:string userName = Encoding.Unicode.GetString(packetBuff).TrimEnd('\0');我是这么想的:既然GetString()函数已经把数组packetBuff转成字符串了,那还要去除字符串结束符'\0'干吗?请高手赐教。
1 回答

狐的传说
TA贡献1804条经验 获得超3个赞
在C++中或者当前这种情况,字符串其实是个char数组,用acsii为0的字符才区分结尾标识
所以每个字符串结尾笔试ascii为0的字符
但是C#里不需要,所以要把这个不可见的字符去掉
添加回答
举报
0/150
提交
取消