关于android联系人导出Vcard格式,出现乱码有关问题
关于android联系人导出Vcard格式,出现乱码问题各位大侠好,小弟最近在开发联系人导出模块,以前用的是一个第
关于android联系人导出Vcard格式,出现乱码问题
各位大侠好,小弟最近在开发联系人导出模块,以前用的是一个第三方的jar包,但是不是很好用,需要把信息查出来再创建,还不如自己解析。最近看到一篇博客用了一下方法:
Java codeContentResolver cr = getContentResolver();Cursor cur = cr.query(ContactsContract.Contacts.CONTENT_URI,null, null, null, null);String lookupKey = cur.getString(cur.getColumnIndex(ContactsContract.Contacts.LOOKUP_KEY));Uri uri = Uri.withAppendedPath(ContactsContract.Contacts.CONTENT_VCARD_URI, lookupKey);AssetFileDescriptor fd = this.getContentResolver().openAssetFileDescriptor(uri, "r");FileInputStream fis = fd.createInputStream();
最后的文件流里就是vcard信息,可以通过循环游标得到所有信息,可是当遇到中文后,就变成了
VERSION:2.1
N;CHARSET=UTF-8;ENCODING=QUOTED-PRINTABLE:;HM=E5=B8=AD=E5=85=88=E7=94=9F=E5=
=8A=9E
TEL;CELL:02123070200
X-IRMC-LUID:0002000000F8
END:VCARD
BEGIN:VCARD
VERSION:2.1
N:;me
TEL;CELL:13903831438
X-IRMC-LUID:000200000104
END:VCARD
这样
我估计所根据LOOKUP_KEY查到的vcard的那个表里就是这样写的,不是文件流格式的问题,只是个人看法,怎么解决呢??各位大侠帮帮忙,解决后我会把方法贴出来,希望能帮助到更多人。
对了突然想到在电脑上看是乱码,如果我直接倒回到手机,是否也可以正常解析呢?项目在公司,现在无法验证~
[解决办法]你的问题是什么,查 UTF-8 QUOTED-PRINTABLE vCard,对这三个格式了解了,就行了