示例#1
0
        public static uint CRC32(byte[] ABytes)
        {
            CRC32cs.MakeCRC32Table();
            uint num = 4294967295u;

            for (int i = 0; i < ABytes.Length; i++)
            {
                byte aByte = ABytes[i];
                num = CRC32cs.UpdateCRC32(aByte, num);
            }
            return(CRC32cs.CRC32ToUint(~num));
        }
示例#2
0
        private static ushort CRC16(byte[] ABytes)
        {
            CRC32cs.MakeCRC16Table();
            ushort num = 65535;

            for (int i = 0; i < ABytes.Length; i++)
            {
                byte aByte = ABytes[i];
                num = CRC32cs.UpdateCRC16(aByte, num);
            }
            return(num);
        }
示例#3
0
 private static ushort CRC16(string AString)
 {
     return(CRC32cs.CRC16(AString, Encoding.UTF8));
 }
示例#4
0
 private static ushort CRC16(string AString, Encoding AEncoding)
 {
     return(CRC32cs.CRC16(AEncoding.GetBytes(AString)));
 }
示例#5
0
 private static uint CRC32(string AString)
 {
     return(CRC32cs.CRC32(AString, Encoding.UTF8));
 }
示例#6
0
 private static uint CRC32(string AString, Encoding AEncoding)
 {
     return(CRC32cs.CRC32(AEncoding.GetBytes(AString)));
 }