台灣最大程式設計社群網站
線上人數
977
 
會員總數:240686
討論主題:186544
歡迎您免費加入會員
討論區列表 >> VB.NET >> Socket 的 TCP 的字串比較問題
[ 變換順序 ]  
[我要回覆]
1
回應主題 加入我的關注話題 檢舉此篇討論 將提問者加入個人黑名單
Socket 的 TCP 的字串比較問題
價值 : 120 QP  點閱數:136 回應數:2

樓主

林廷恩
門外漢
0 1
18 1
發送站內信

我用Socket的TCP發送 System.Text.Encoding.Default.GetBytes("test") 到Server端
Server端接收到後比較 System.Text.Encoding.Default.GetString(byte) = "test"
得到結果是False

為什麼?

而且我用MessageBox.Show(System.Text.Encoding.Default.GetString(byte))
顯示出來是test
跟字串"test"比較卻是False
不管用=還是Equals都一樣

只有TCP會這樣
UDP則正常

搜尋相關Tags的文章: [ Socket ] , [ TCP ] , [ String ] , [ 字串 ] ,
本篇文章發表於2017-08-18 22:28
別忘捐VP感謝幫助你的人 新手會員瞧一瞧
1樓
最有價值解答

練武功
檢舉此回應
因為長度不同。

你可以試試看接受到的資料長度是多少。應該不會只有4個bytes。

本篇文章回覆於2017-08-19 16:16
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
2樓
作者回應

林廷恩
檢舉此回應
感謝! 我發現問題了!
原來我後面多放了好幾個0 0 0的空Byte
本篇文章回覆於2017-08-19 17:24
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
[ 變換順序 ]   
1

回覆
如要回應,請先登入.