StringToByteArray() throw exception in C# 2.0
我在VS2005上练习StringToByEarray()。但抛出异常。你能告诉我更多关于它的信息吗?
异常警报**mscorlib.dll中发生"system.formatException"类型的未处理异常
其他信息:找不到任何可识别的数字。**
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | 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",要么使用
嗯,你有被零除的可能性,例外…
修复后,需要继续输入验证,方法是确保字符串以0x开头,然后在进行转换时跳过前缀。