日期:2014-05-18  浏览次数:21083 次

C#中如何将字符串“3002”转换为byte数组{0x30,0x02}
如题,主要是做上位要用到

------解决方案--------------------
不懂帮顶,如果是单纯字符串处理
C# code
public byte[] GetByteByString(string s)
        {
            byte[] byt = new byte[2];
            byt[0] = byte.Parse(s.Substring(0, 2));
            byt[1] = byte.Parse(s.Substring(2, 2));
            return byt;
        }

------解决方案--------------------
你这问题包含三个知识点...

1.16进制字符串表示的数字转换,注意长度...
short s = Convert.ToInt16("3002", 16);

2.数字转换为字节数组...
byte[] ba = BitConverter.GetBytes(s);

3.PC的Little Endian转换为Big Endian...
Array.Reverse(ba);