缓冲-弧32
crc32 与二进制数据和花式字符集,输出相配合 缓冲、签名或未签名的数据并有测试.
摘自《儿童权利公约》在巴布亚新几内亚规格中的执行情况样本: http://www.w3.org/TR/PNG/#D-CRC附录
这个包需要节点8+才能工作.
安装
npm install buffer-crc32
实例
const crc32 = require('buffer-crc32');
// works with buffers
const buf = Buffer([0x00, 0x73, 0x75, 0x70, 0x20, 0x62, 0x72, 0x6f, 0x00]);
crc32(buf); // -> <Buffer 94 5a ab 4a>
// has convenience methods for getting signed or unsigned ints
crc32.signed(buf); // -> -1805997238
crc32.unsigned(buf); // -> 2488970058
// will cast to buffer if given a string, so you can
// directly use foreign characters safely
crc32('自動販売機'); // -> <Buffer cb 03 1a c5>
// and works in append mode too
const partialCrc = crc32('hey');
const partialCrc = crc32(' ', partialCrc);
const partialCrc = crc32('sup', partialCrc);
const partialCrc = crc32(' ', partialCrc);
const finalCrc = crc32('bros', partialCrc); // -> <Buffer 47 fa 55 70>
测试
这在zlib的crc32方法的输出上进行了测试. 你们可以跑
试验npm test (需要水龙头)
另见
https://github.com/alexgorbatchev/node-crc 页面存档备份,存于互联网档案馆, (中文(简体) ), crc.buffer.crc32 (单位:千美元)
支持缓冲输入并返回未签名的英寸( 感谢@ tjholowaychuk) .
许可证
麻省理工学院/X11