看板 C_Sharp 關於我們 聯絡資訊
大家好, 請問一下,下面這個程式碼,想使用在接收資料後進行處理 發生了str2其實為空的狀態,不知道什麼原因 while(true) { while(comport.BytesToRead > 0) { str = Convert.ToChar(comport.ReadChar()).ToString(); str2 += str; richTextBox1.Text += str; } if (str2 == "test") richTextBox6.Text += str2; } 跪求 各位稍微指點一下 一個人好難玩 orz -- Sent from my Windows -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 59.127.222.1 ※ 文章網址: https://www.ptt.cc/bbs/C_Sharp/M.1449844878.A.6F4.html ※ 編輯: wasidada (59.127.222.1), 12/11/2015 22:55:18
deo2000: 用中斷看comport.ReadChar()有東西嗎? 12/12 19:13
有東西
name2name2: 用debug模式用滑鼠去看str有沒有值 12/12 19:36
name2name2: 就是把中斷點設在那 12/12 19:36
doraemon1293: 有清空緩衝區嗎 12/12 21:27
我之前沒設定,剛剛設定了改善很多了 ...至少現在不會延遲 @@
doraemon1293: 開發環境是在win7 x64嗎 12/12 21:29
WIN 10 X64 ※ 編輯: wasidada (59.127.222.1), 12/12/2015 22:58:52 ※ 編輯: wasidada (59.127.222.1), 12/12/2015 22:59:34
SANDER00: STR2沒初始化啊 而且一班這種不斷加長字串長度的狀況 12/13 23:39
SANDER00: 會用stringbuilder 型別 不會直接用string 12/13 23:39
SANDER00: 而且 看你流程 沒有str2 好像沒差 為何這麼做? 12/13 23:41
wasidada: 把收到的字元,累加上去變成一個字串 12/14 05:51
SANDER00: 為何不等buffer區 接收足夠數量後 再一次接收呢 12/14 08:07