您好,我有一个Java代码我想用C#编写代码,但我遇到了问题:
此代码(func):
DatatypeConverter.parseHexBinary (temp);
我正在C#
另一方面 我有完整的代码应该在Java中执行此操作,但也在此代码中遇到问题:
public static byte [] hexStringToByteArray (String s)
{
int len = s.Length;
byte [] data = new byte [len / 2];
for (int i = 0; i <len; i + = 2)
{
data [i / 2] = (byte) ((Character.digit (s.charAt (i), 16) << 4)
+ Character.digit (s.charAt (i + 1), 16));
}
return data;
}
问题是编译器无法识别
Character.digit (s.charAt (i)
感谢任何帮助。谢谢!
答案 0 :(得分:0)
要将hex
字符串转换为byte
数组,您可以使用:
public static byte[] HexStringToByteArray(string s)
{
int len = s.Length;
byte[] data = new byte[len/ 2];
for (int i = 0; i < len; i += 2)
{
data[i / 2] = Convert.ToByte(s.Substring(i, 2), 16);
}
return data;
}