将java代码转换为c#代码(hexString To ByteArray)

时间:2016-12-25 11:22:27

标签: java c# arrays

您好,我有一个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)

感谢任何帮助。谢谢!

1 个答案:

答案 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;
}