byte[]转换为string,然后又将string转换byte[]数据怎么会少了一位?急..
我首先将byte[]转换为string,然后又把这个string转成byte[],原来byte[]长度是42,转换回来之后变成了41, 数据怎么少了一位?
------解决方案--------------------开始那个 byte[] 怎么来的?
看看开始几个字节是否有区别
可能 BOM 的缘故
------解决方案--------------------你理解 Default 是什么意思吗?通常在.net是unicode。
那么很简单,在string传递、计算过程中,不符合unicode规则的内容被过滤掉了,剩下的是正常的unicode内容。
你用这种方式“转换”,没有足够的根据!
------解决方案--------------------我给你打个比方吧:商店里进了10头猪,制作了40个猪蹄,卖出了5个猪蹄,请问还剩多少头猪?
你的思路类似这种。要知道中间的所谓转换加工的内涵,否则不要滥用什么“转换”。
------解决方案--------------------218被过滤掉了,呵呵
------解决方案--------------------学习了
------解决方案--------------------Encoding.GB2312
------解决方案--------------------BitConverter.ToString得到的十六进制字符串是以'-'隔开的,如果你不要'-',那么
C# code
string strData = BitConverter.ToString(bytes).Replace("-","");