[问题] 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