unique - nativescript-nfc rfid阅读器插件唯一ID问题
问题描述
我使用 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: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如何将十六进制字符串转换为字节数组,以及十六进制字符串中的字节数组?应该通过类似的迭代数组来提供答案,将每个字节转换为十六进制字符串
推荐阅读
- java - 请帮我配置自定义 LocalSessionFactoryBean
- javascript - Three.js 中的对象选择检查
- java - ImageIO ZLIB 输入流的意外结束
- python-3.x - 无法使用python和oracle数据库将数据插入表中
- javascript - ReactJS 不显示 backgroundImage 内联 CSS
- java - 在 plugin.xml 文件中指定 eclipse 版本
- python - 如何从文本中提取所需信息?Python
- jquery - 选择单击项目的子项(同一页面上的多个副本)
- swift - 添加语言后无法为 XCTest 加载底层模块
- vb.net - VB .Net PrintDialog 返回错误的打印机名称