我在VS2005上练习StringToByteArray()。但是抛出异常。您能告诉我更多信息吗?

异常警报** mscorlib.dll中发生了'System.FormatException'类型的未处理异常

附加信息:找不到任何可识别的数字。**

public static byte[] StringToByteArray(String hex)
    {
        int NumberChars = hex.Length;
        byte[] bytes = new byte[NumberChars / 2];
        for (int i = 0; i < NumberChars; i += 2)
            // exception here
            bytes[i / 2] = Convert.ToByte(hex.Substring(i, 2), 16);
        return bytes;
    }

    static void Main()
    {
            byte[] myByte = new byte[2];
        myByte = StringToByteArray("0x0");
    }

最佳答案

您要么需要从传入的字符串的开头删除“ 0x”,要么使用for开始int i = 2;循环。另外,您正在方法中分配数组。您也不需要这样做Main

关于c# - C#2.0中的StringToByteArray()引发异常,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/6182132/

10-10 10:12