calculating CRC32
chrisalex via Digitalmars-d-learn
digitalmars-d-learn at puremagic.com
Fri Apr 8 13:03:42 PDT 2016
I'm trying to calculate CRC32 and it keeps giving me the wrong
result.
>void main(string[] args)
>{
> CRC32Digest test = new CRC32Digest();
> ubyte[] data = [1,5,2,3,4];
> test.put(data);
> auto data2 = test.finish();
> writeln((data2[0] << 24) | (data2[1] << 16) | ((data2[2]) <<
> 8) | (data2[3]));
> writeln((data2[0]) | (data2[1] << 8) | ((data2[2]) << 16) |
> (data2[3] << 24));
>}
this writes out
>728586467
>-480744149
but when calculating CRC32 with java, I get
>3814223147
Not sure what I'm doing wrong. I tried reversing data[] as well.
More information about the Digitalmars-d-learn
mailing list