身份证姓名信息显示的问题

2019-03-26 12:22发布

我在用安卓搞读取身份证信息并显示的工作,身份证信息已经读出来了,
可是姓名显示不对。
比如数据如下:6C 9A D7 5F DC 8F 20 00 20 00 20 00 20 00 20 00 20 00 20 00 20 00 20 00 20 00 20 00 20 00
30个字节。请问大神,如何把这30个字节转化为汉字呢?谢谢!
此帖出自Linux与安卓论坛
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
12条回答
chenbingjy
1楼-- · 2019-03-27 08:49
我用java,String s = "u9a6cu5fd7u8fdc";
        System.out.println("Original: " + s);  
  
        s = toEncodedUnicode(s, true);  
        System.out.println("to unicode: " + s);  
  
        s = fromEncodedUnicode(s.toCharArray(), 0, s.length());  
        System.out.println("from unicode: " + s);这是在知道这个u9a6cu5fd7u8fdc的情况下可以。
可以显示。
chenbingjy
2楼-- · 2019-03-27 12:28
 精彩回答 2  元偷偷看……
qiushenghua
3楼-- · 2019-03-27 17:23

我不熟悉java语言,也不熟悉安卓,但是猜测和C会比较类似吧

在C里面,是转义符,下面这几句是等效的:
char a='x30';
char a=0x30;
char a=48;
char a='0';
所以我猜测java里也是给某个变量赋值了。
所以你不应该纠结于怎么显示u,而是应该考虑如何将9a 6c赋值到指定的变量中去。


chenbingjy
4楼-- · 2019-03-27 19:55
好的,谢谢了
pinggomd
5楼-- · 2019-03-28 00:21
 精彩回答 2  元偷偷看……
sunset2007
6楼-- · 2019-03-28 00:33
汉子是2个字节代表一个编码,并且是unicode编码 ,C下需要调用转换unicode码的函数去转换

一周热门 更多>