我使用nfc阅读器,因此我能够获取标签的唯一ID。当我读取标签时,id的名称如下:
id:[-52,22,-61,-67,80,1,4,-32,[长度]:8]
如何获取十六进制数?它应该被称为CC:16:C3:BD:50:01:04:E0。这也是我拥有数据库条目的方式。因此,我找回身份证的方式对我毫无用处。
我将感谢您提供任何有用的答案。预先谢谢你。
我使用nfc阅读器,因此我能够获取标签的唯一ID。当我读取标签时,id的名称如下:
id:[-52,22,-61,-67,80,1,4,-32,[长度]:8]
如何获取十六进制数?它应该被称为CC:16:C3:BD:50:01:04:E0。这也是我拥有数据库条目的方式。因此,我找回身份证的方式对我毫无用处。
我将感谢您提供任何有用的答案。预先谢谢你。
字节范围是-128到127
例如对于Java https://docs.oracle.com/javase/tutorial/java/nutsandbolts/datatypes.html
“ byte:字节数据类型是8位带符号的二进制补码整数。最小值为-128,最大值为127(含)。”
您只需要将其转换为显示为十六进制的字符串即可。
通常,根据ISO / IEC 14443-3,UID是一个7字节的数字,其中字节4是校验字节的一部分
我不知道如何在Nativescript中将字节转换为字符串,但是在Java中可以做到
StringBuilder Uid = new StringBuilder();
for (int i = 0; i < result.length; i++) {
// byte 4 is a check byte
if (i == 3) continue;
Uid.append(String.format("%02X ",result[i]));
}
虽然不需要完全跳过校验字节来为您提供唯一的ID,但此代码可以做到这一点。
对于JavaScript How to convert hex string into a bytes array,and a bytes array in the hex string?,应该在将每个字节转换为十六进制字符串的数组上提供类似的迭代结果