IC卡的原始卡号是固定的,而读卡器根据原始卡号可以转换输出不同的位数和格式,各个厂家的读卡器输出不太一样,但基本上是 按一定的标准输出,以下是各个厂家不同读卡器的数据输出格式,购买读卡器时可以要注意选择,如果有自己的标准也可以跟我们定制。 一般在购买卡片或卡片喷号时,注意卡号格式的一致性,以下是几种格式:
1、格式0:8位十六进制的ASCII 字符串,即8 Hex 格式。
如:某样卡读出十六进制卡号为:02 6f 6c 3a(Hex,4个字节), 转换后为一个字符串“026f6c3a”,8个字节,不要在意字符串结束符。
2、格式1:将格式1 中的后8 位,转换为10 位十进制卡号,即8H---10D。
即将02 6f 6c 3a(Hex,4个字节)转换为:“0040856634”。
3、格式2:将格式1 中的后6 位,转换为8 位十进制卡号,即6H---8D。
即将6f 6c 3a(Hex,3个字节)转换为:“07302202”。
4、格式3:将格式1 中的倒数第5、第6 位,转换为3 位十进制卡号,再将后4 位,转换为5 位十进制卡号,中间用“,”分开,即“2H + 4H”。
即将2H“6f”转换为:“111”,4H “6c3a”转为“27706”。
最终将2 段号连在一起输出为“111,27706”。
5、格式4:将格式1中后8位的前4位,转换为5位十进制卡号,再将后4位,转换为5位十进制卡号,中间用“,”分开,即“4Hex + 4Hec”。
1、格式0:8位十六进制的ASCII 字符串,即8 Hex 格式。
如:某样卡读出十六进制卡号为:02 6f 6c 3a(Hex,4个字节), 转换后为一个字符串“026f6c3a”,8个字节,不要在意字符串结束符。
2、格式1:将格式1 中的后8 位,转换为10 位十进制卡号,即8H---10D。
即将02 6f 6c 3a(Hex,4个字节)转换为:“0040856634”。
3、格式2:将格式1 中的后6 位,转换为8 位十进制卡号,即6H---8D。
即将6f 6c 3a(Hex,3个字节)转换为:“07302202”。
4、格式3:将格式1 中的倒数第5、第6 位,转换为3 位十进制卡号,再将后4 位,转换为5 位十进制卡号,中间用“,”分开,即“2H + 4H”。
即将2H“6f”转换为:“111”,4H “6c3a”转为“27706”。
最终将2 段号连在一起输出为“111,27706”。
5、格式4:将格式1中后8位的前4位,转换为5位十进制卡号,再将后4位,转换为5位十进制卡号,中间用“,”分开,即“4Hex + 4Hec”。
照此推算结果为:00623,27706 (4H+4H)