[工具] 1個byte的影響

作者: cyclone350 (老子我最神)   2015-12-18 20:34:34
是這樣的,昨天開發的程式出現了一個 bug
在 local 端手動測試功能完全正常
但是在 staging 環境手動測試與我自己寫的整合測試結果都是不正常的 (fail)
結果我 debug 一整天
查了相關文件,看了教學 blog,查詢 Stack Overflow
仍沒有任何收穫
最後查到原因了
程式碼的有一行看起來像這樣
this.xbox = "todayIsFriday";
我印出 xbox 的 log 也是 "todayIsFriday"
但實際上 I 與 s 之間似乎夾雜了一個雜訊 (也許是一個byte)
也就是說,如果你把指標移到 I 跟 s 中間,並且按下 ←,這個雜訊就會被消除,
程式就可以正常運作了
會發現這個原因是因為我剛好複製了這個字串
然後又讓 System.out.print 去印出來,才看到亂碼並發現這件事
(就算用 log 間接印出在 console 仍看不出亂碼)
請問這種 case 有辦法用工具檢查出來嗎?
還是各位有甚麼撇步可以快速找到亂碼?
還是,這是電腦問題? (我電腦曾經突然重開機讓後編輯中的檔案整個死掉)
該換電腦了嗎? 我早就想換了。
作者: qrtt1 (有些事,有時候。。。)   2015-12-18 21:15:00
版本控制工具的 diff 沒有顯示出來?
作者: cyclone350 (老子我最神)   2015-12-18 21:29:00
diff 沒試過耶,這是我本機剛新開發的功能。晚點去看看
作者: LaPass (LaPass)   2015-12-18 23:35:00
你用charAt然後轉成int一個一個字元印出來看看,我猜是非顯示字元
作者: ssccg (23)   2015-12-19 00:03:00
EFBBBF,不就UTF-8的BOM
作者: fgh81113 (阿景)   2015-12-19 13:34:00
有點妙 你怎麼生出那個s的
作者: MephistoH (默非斯托)   2015-12-21 13:31:00
這個我有遇過...不過我那個是換行符號..情形類似
作者: gmoz ( This can't do that. )   2015-12-21 16:23:00
VT100 ?
作者: cyclone350 (老子我最神)   2015-12-23 22:02:00
這個東西是甚麼我並不在意,可能是 ssccg 說的 BOM也許是複製貼上時貼到的,但是我總不能跟大家說:[嘿,請大家在寫程式時隨時按左右來檢查有沒有奇怪字元喔~ ]
作者: now99 (陳在天)   2015-12-26 09:48:00
轉hex字串檢查
作者: FantasyRyu (眩惑之龍)   2015-12-27 10:02:00
貼到PTT檢查是哪招 XDDDDD 厲害

Links booklink

Contact Us: admin [ a t ] ucptt.com