基于 android 获得 SIM 卡三种格式的 UCS2 编码
本文主要介绍如何获得字符的 80,81,82 格式编码,代码在 andoid 平台上
测试,成功存储联系人信息并成功解码。由于有些东西是自己研究所得,难免
会有错误,如有不实的地方,欢迎批评指正。
解码文件及方法:
frameworks/base/telephony/java/com/android/internal/telephony/uicc/
IccUtil.java 的 adnStringFieldToString()方法。
什么是 UCS2 编码?
UCS2(Unicode Character Set)是一种字符编码方式,2 代表一个字符编
码后为 2 个字节。
我们在 SIM 卡上存储联系人时就是使用 UCS2 编码。
SIM 卡上的 UCS2 编码主要有三种格式:80,81,82
下面说明每种格式的编码方式:
‘80’格式:
1.第一个字节为 0x80
2.之后的字节为 UCS 字符,每个字符占用 2 个字节。(在 android 平台上用
UTF-16BE 编码)。
例:东方不败
编码后的字符为:4e1c 65b9 4e0d 8d25
用 80 格式表示是:80 4e1c 65b9 4e0d 8d25
‘81’格式:
1. 第一个字节为 0x81
2.第二个字节为字符串长度
找软件资料,就到一览软件文库