有一个字符串为 0x01,0x02,0x03 ,现想将其转换成放入一个 byte[] a = new byte[]{0x01,0x02,0x03 } 

解决方案 »

  1.   


            string str = "0x15";
            byte b = Convert.ToByte(str, 16);
            Response.Write(b.ToString());//21
      

  2.   

    Java里面有这个方法。
    String.getBytes();.Net 中应该也有相应的方法。
      

  3.   


    string byteString = "0x01,0x02,0x03";
                string[] splitArray = byteString.Split(',');
                byte[] byteArray = new byte[splitArray.Length];
                for(int i=0;i<splitArray.Length;i++)
                {
                    byteArray[i] = Convert.ToByte(splitArray[i], 16);
                }
      

  4.   

    Convert.ToByte(String value); 方法就行了!
      

  5.   

    string str = "0x01,0x02,0x03";
    string[] arr = str.Split(',');
    byte[] byteArray = new byte[arr.Length];
    for (int i = 0; i < arr.Length; i++)
    {
    byteArray[i] = Convert.ToByte(arr[i], 16);
    }
      

  6.   

            /**/
            /// <summary>
            /// 字符串转16进制字节数组
            /// </summary>
            /// <param name="hexString"></param>
            /// <returns></returns>
            public static byte[] strToToHexByte(string hexString)
            {
                hexString = hexString.Replace(" ", "");
                if ((hexString.Length % 2) != 0)
                    // hexString += " ";
                    hexString = hexString.Insert(hexString.Length - 1, "0");
                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;
            }
      

  7.   

    string str = "0x01,0x02,0x03";
    string[] strs = str.Splist(',');
    byte[] bs = (from s in strs select Convert.ToByte(s,16)).ToArray();