NDEF文本格式解析

============》》Record Type Definition Technical Specificaltions

 1 public class TextRecord {
 2     private final String mText;
 3
 4     private TextRecord(String text) {
 5         // TODO Auto-generated constructor stub
 6
 7         mText = text;
 8     }
 9
10     public String getText() {
11         return mText;
12     }
13
14     public static TextRecord parse(NdefRecord ndefRecord) {
15         //
16         if (ndefRecord.getTnf() != NdefRecord.TNF_WELL_KNOWN) {
17             return null;
18         }
19
20         if (!Arrays.equals(ndefRecord.getType(), NdefRecord.RTD_TEXT)) {
21             return null;
22         }
23
24         try {
25
26             byte[] palyload = ndefRecord.getPayload();
27             // 根据最高位判断字符编码
28             String textEncoding = ((palyload[0] & 0x80) == 0) ? "UTF-8"
29                     : "UTF-16";
30             // 根据第六位获得语言编码长度
31             int languageCodeLength = palyload[0] & 0x3f;
32             // 获得语言编码
33             String languageCod = new String(palyload, 1, languageCodeLength,
34                     "US-ASCII");
35
36             String text = new String(palyload, languageCodeLength + 1,
37                     palyload.length - languageCodeLength - 1, textEncoding);
38
39             return new TextRecord(text);
40
41         } catch (Exception e) {
42             // TODO: handle exception
43             throw new IllegalArgumentException();
44         }
45
46     }
47 }
时间: 2024-09-29 10:04:56

NDEF文本格式解析的相关文章

9、NFC技术:NDEF文本格式解析

NDEF文本格式规范 不管什么格式的数据本质上都是由一些字节组成的.对于NDEF文本格式来说.这些数据的第1个字节描述了数据的状态,然后若干个字节描述文本的语言编码,最后剩余字节表示文本数据.这些数据格式由NFC Forum的相关规范定义,可以从下面的地址下载相关的规范. http://www.nfc-forum.org/specs/spec_dashboard NDEF文本数据格式 状态字节编码格式 判断数据是否为NDEF格式 获取NFC标签中的数据要通过NdefRecord.getPaylo

11、NFC技术:NDEF Uri格式解析

NDEF Uri格式规范 与NDEF文本格式一样,存储在NFC标签中的Uri也有一定的格式 http://www.nfc-forum.org/specs/spec_dashboard 编写可以解析Uri格式数据的类 11.NFC技术:NDEF Uri格式解析

ELF格式解析库之提取信息

看,宝藏就在那儿 在上一篇文章中,我们提到用按图索骥比喻库的初始化过程,那么现在有了地图,接下来的事情就是去寻找我们感兴趣的宝藏了.这个宝藏可能是一个ELF文件的程序文本段,也有可能是程序的某个不知名的代码段,这些都取决于你想要什么信息.我建议你去阅读ELF 的官方标准,那里边讲的比较清楚. 我这里只是实现了几个提取诸如:程序的大小端,能执行的CPU位数,程序的入口点,以及获得程序的所有节的编号和根据节的编号获取该节的详细信息. 提取信息:程序的大小端 1: long ELF_GetELFEnd

Log4net系列一:Log4net搭建之文本格式输出

Log4net简介 前言 项目开发中,记录项目日志是必须的,如果非要说日志的重要性(日志可看做,飞机的黑匣子,或者汽车的行车记录仪),根据等级进行记录,方便我们排查相关问题,以后项目运维中,也方便很多.基本上我们进入一家公司,开发你从事什么岗位,公司产品或项目的框架都已经搭建好,我们有时候进行改版,根据业务延伸框架,记录日志基本都是我们自己去调用封装的方法.今天我们就对Log4net进行一下学习,Log4net可以做到:1.邮箱发送日志:2.记录到数据库:3.生成记事本文件.本章Log4net学

【java】json格式解析

实现一个小功能,都磕磕绊绊.信心全无.感觉又变成死循环,觉得磨刀误砍柴,于是用一把半成品废刀一块一块的削.最后削出的玩意乱七八糟,自己也费了好大劲. 功能是,先从数据库中查询到一串数据,然后要组织成json格式,再返回给jsp,jsp才能显示到前端界面上.可是现在不显示,原因应该是返回的不是json格式,所以前端接口不认识. JSON定义    JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式,易于阅读和编写,同时也易于机器解析和生成.它基于ECMA2

Ajax属性和函数以及 返回值之XML格式和文本格式(二)

(一) 客户端请求文本之json格式:接收到json格式,再有js解析(具体先eval成对象,然后.即可) var text = this.responseText; var book = eval('('+ text +')'); document.getElementById('btitle').value = book.title; document.getElementById('bintro').value = book.intro; //其中btitle和bintro是客户端网页中的

实用又好用,6 款 Python 特殊文本格式处理库推荐

以下是一些 Python 编写的用来解析和操作特殊文本格式的库,希望对大家有所帮助. 01.Tablib https://www.oschina.net/p/Tablib Tablib 是一个用来处理与表格格式数据有关的 Python 库,允许导入.导出.管理表格格式数据,并具备包括切片.动态列.标签和过滤,以及格式化导入和导出等高级功能. Tablib 支持导出/导入的格式包括:Excel .JSON .YAML .HTML .TSV 和 CSV ,暂不支持 XML . >>> dat

VBA 以文本格式打开DSV

Public Function GetDataFromDSV(fpath As String) As Collection Dim AllTextFormat(255) As Integer Dim i As Long For i = 0 To 255 AllTextFormat(i) = xlTextFormat Next i Application.ScreenUpdating = False Application.DisplayAlerts = False Application.Wor

如何把Excel中的某列数值如何转换成文本格式,且兼容性最好?

假设要把下方A列数值变成文本格式.有多种方法,其中下方的方法兼容性最好: 第一步:选择 A 列,然后,运行菜单 数据/分列... 命令,如下图: 第二步:默认 下一步: 第三步:默认 下一步: 第四步:列数据格式/文本 ,点击 完成. 第五部:完成的如下图,A列所示:每个数字左上方有个 绿色小三角,表明是 文本 格式,兼容性最好.