【发布时间】:2019-12-04 16:27:36
【问题描述】:
在 C# 中,我正在努力生成/计算 CRC32。目前我正在使用这种方法: (crc32类是从this source导入的)
Crc32 c = new Crc32();
var hash = string.Empty;
foreach(byte b in c.ComputeHash(package))
{
hash += b.ToString("0x").ToLower();
}
然后:
Console.WriteLine(hash);
结果是:0048284b
但我想以 HEX 形式获取它。就像“0xD754C033”一样,我可以把它放在一个字节数组中。 对字节数组的 CRC32 计算进行了一些挖掘,但找不到任何可行的方法。
长话短说:如何计算字节数组的 CRC32 十六进制? (正确)
P.S:根据提供的链接,发布的答案不重复。
【问题讨论】:
-
你为什么不用微软的 CNG Api
-
byte[] to hex string的可能重复
-
c.ComputeHash(package)看起来像是返回一个字节数组。如果你想“把它放在一个字节数组中”,你已经有了一个......c.ComputeHash(package)的返回值 -
完全不清楚您在这里要求什么,您提供的答案只会让事情更加混乱。