-5

我正在用 C#.net 开发一个应用程序。我必须做一个快速的十六进制到二进制转换。我所做的是...

rtpPTypeNum = string.Join(string.Empty, udp.Payload.ToHexadecimalString().Substring(2, 2).Select(C => Convert.ToString(Convert.ToInt32(C.ToString(), 16), 2).PadLeft(4, '0'))).Substring(1, 7);

我已经检查了它的性能,但这对我来说还不够好。

udp.Payload.ToHexadecimalString()返回一串十六进制数字。

在这个转换中,我必须进行大约 9000 次迭代。

你能给我一个更好的方法吗?

4

2 回答 2

9

谷歌上的最高结果给了我:

return Convert.ToString(Convert.ToInt32(hexValue, 16), 2);
于 2013-01-08T08:50:38.337 回答
1

如果您希望您的号码很长,您可以试试这个 Convert.ToString(Convert.ToInt64(hexstring, 16), 2);

于 2013-01-08T09:02:33.040 回答