发布网友 发布时间:2022-04-22 06:15
共3个回答
热心网友 时间:2023-08-11 18:17
你在读取数据流的时候先判断下当前流中有多少字节(tempSocket.Available的可供读取的数据量),就创建多少字节的byte数组,不然的话,你这样读取的数据(例如:流中可供读取的数据量是100,你直接存到b中,而你转换字符串时是将b全部转换,里面还有924个空字符)不能直接比较,需要把多余的空字符(你显示的长度是512就是这个原因)去掉后再比较才可以。追问我明白了。。。使用trim()时无法将'\0'去掉,所以我自己写了一个去掉'\0'的方法。问题解决了。
追答对了!
热心网友 时间:2023-08-11 18:17
if (str.Equals("guest")) MessageBox.Show("尼玛能不能成功一次啊!");
这步,加断点,看一下str字符串内容,最好是查看一下str的长度是否是5.追问str内容为"guest",但是长度却是512。
热心网友 时间:2023-08-11 18:18
加个Trim试试?感觉你这编码没问题呀追问使用trim也没用,长度仍然为512。