字符串,怪问题啊。。。。
这段代码是通过socket获取值str2
socket.Receive(bytes)
Dim str2 As String = Encoding.Default.GetString(bytes)
citynamenew = str2
Console.WriteLine("------" & str2 & "------------")
str2 的值应该是"------北京------------"
但是结果却是"------北京
不管str2后面加上任何字符串,都把后面的给搞没了,实在想不通为什么????请各位大侠指点一下!!!!
[解决办法]
发送前strconv
接收后也strconv
试试
[解决办法]
把char(0)给replace掉
[解决办法]
被最后的结束符抹掉了
[解决办法]
收发段的编码不一致 Encoding.ASCII、Encoding.Default,要用一样的。
建议用 UTF8 或 Unicode。
[解决办法]
下断点在socket.Receive(bytes)和Dim str2 As String = Encoding.Default.GetString(bytes)
,看看数组bytes最后一个字符编码是什么,然后看看str2是否一致。
[解决办法]
帮顶
[解决办法]
Module Module1 Sub Main() Dim str2 As String For i = 0 To 255 str2 = "北京" & Chr(i) Console.WriteLine("------" & str2 & "------------") Next Console.Read() End SubEnd Module