[問題] byte array轉string 存檔問題

作者: biingen (餅乾)   2019-06-15 13:02:15
請問各位大大:
本來開發接收ascii的介面,
但最近有資料是來hex code,
雖然顯示不正常,
但是存檔後,
用ultraedit從ascii轉hex,
就可以看得到亂碼內容。
不過問題來了,
但只要是byte內容有0x00,
就會導致收到的內容不正常。
我有爬了一些網路的作法,
有人是說hex就應該用hex顯示。
https://social.msdn.microsoft.com/Forums/zh-TW/44d219cd-cd6b-4778-8f33-389c0eaa7be4/byte-array36681string-39023310342183938988?forum=233
但是hex的可讀性不佳,
因為全變成hex顯示,
就連ascii也變成hex顯示。
但假若收的部份改用Encoding.UTF8.GetString(byte)收的內容,
資料卻少了0x00,
就不是原有的資料。
不知大大們有什麼方法,
可以讓ascii及hex都可以收,
但卻不會更改到其內容呢?
謝謝。
作者: ssccg (23)   2019-06-15 13:50:00
本來就不是Text的data為什麼要轉成String存
作者: annies5 (念渝)   2019-06-15 16:59:00
傳送前不是要先告訴接收方,要送asc或byte資料?
作者: cacky (卡奇)   2019-06-18 08:23:00
只能收hex存hex吧,要顯示給人看的時候再翻譯來源端丟出這段資料時就覺得它不是要給人看的(例如AES公開金鑰),硬要看只好多做點工作
作者: kobe8112 (小B)   2019-06-18 14:51:00
資料的本質又沒有改變,通通一樣啊應該是你自己要定義清楚資料的格式吧?

Links booklink

Contact Us: admin [ a t ] ucptt.com