作者biingen (饼乾)
看板C_Sharp
标题[问题] byte array转string 存档问题
时间Sat Jun 15 13:02:15 2019
请问各位大大:
本来开发接收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都可以收,
但却不会更改到其内容呢?
谢谢。
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 175.181.180.148 (台湾)
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/C_Sharp/M.1560574938.A.C9B.html
1F:→ ssccg: 本来就不是Text的data为什麽要转成String存 06/15 13:50
2F:→ annies5: 传送前不是要先告诉接收方,要送asc或byte资料? 06/15 16:59
3F:推 cacky: 只能收hex存hex吧,要显示给人看的时候再翻译 06/18 08:23
4F:→ cacky: 来源端丢出这段资料时就觉得它不是要给人看的(例如AES公开 06/18 08:27
5F:→ cacky: 金钥),硬要看只好多做点工作 06/18 08:28
6F:→ kobe8112: 资料的本质又没有改变,通通一样啊 06/18 14:51
7F:→ kobe8112: 应该是你自己要定义清楚资料的格式吧? 06/18 14:51