qris 0.1.1

QRIS Parser & Editor
Documentation
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
pub fn crc16_ccitt_false(content: &str) -> String{
    let chars = content.chars();
    let mut crc:u16 = 0xFFFF;
    chars.for_each(|c | {
        let c_u16 = c as u16;
        crc ^= c_u16<< 8;
        for _ in 0..8 {
            if crc & 0x8000 == 0{
                crc = crc << 1
            }else{
                crc = (crc << 1)^0x1021

            }
        };
    });
    format!("{:0>4X}",crc & 0xFFFF)
}