十六进制字符串转换成字节数组,然后存储。本机上可行,服务器上老提示:未找到任何可识别的数字。

时间:2023-01-11 14:10:49
byte[] b=StrToHexByte(str);//将字符串转换成字节数组,比如"aa 01 ff"就是170,1,255
然后b[i].ToString()存到数据库,本机上可以,放在服务器上就提示:未找到任何可识别的数字。。。何解?
还有就是如果只是拆分字符串,如将"aa 01 ff"拆成aa,1,ff也可以存储进来,为何识别不了字节数组呢?
我用的一个设备,串口发字符串,然后解析存储的。设备发的字符串收到了,但是存不进去。但在本机上可以。服务器上报错。。。
========
接收的字符串转换成字节数组后:

for (int i = 0; i < b.Length; i++)
{
value=b[0].ToString()+b[1].ToString();
}
//数据存储。。

以上本机上可以,放在服务器上,可以接收到字符串,但将字符串无法转换成字节数组
字符串转换成字节数据函数:
 private byte[] strToToHexByte(string hexString)
        {//十六进制字符串转换成字节数组
            hexString = hexString.Replace(" ", "");
            if ((hexString.Length % 2) != 0)
                hexString += " ";
            byte[] returnBytes = new byte[hexString.Length / 2];
            for (int i = 0; i < returnBytes.Length; i++)
                returnBytes[i] = Convert.ToByte(hexString.Substring(i * 2, 2), 16);
            return returnBytes;
        }

==============
有啥问题哈???

3 个解决方案

#1


在线等。。。

#2


自己已解决

#3


如何解决的,分享下啊,楼主
引用 2 楼 rxk0215 的回复:
自己已解决

#1


在线等。。。

#2


自己已解决

#3


如何解决的,分享下啊,楼主
引用 2 楼 rxk0215 的回复:
自己已解决