我在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/