gpt4 book ai didi

java - 如何导出vCard 3.0?

转载 作者:行者123 更新时间:2023-11-29 02:35:47 25 4
gpt4 key购买 nike

我已经设法获得vCard字符串,但是它们在2.1版本中。
现在的问题是我需要vCard 3.0才能使用API​​。
有没有容易达到我目标的方法?还是我需要手动编辑字符串?

我的代码:

private void getVcardString() {
// TODO: 07.11.2017 Fix vCard Version
vCardArray = new ArrayList<>();
cursor = getContentResolver().query(ContactsContract.CommonDataKinds.Phone.CONTENT_URI, null,
null, null, null);
if (cursor != null && cursor.getCount() > 0) {
cursor.moveToFirst();
for (int i = 0; i < cursor.getCount(); i++) {

String lookupKey = cursor.getString(cursor.getColumnIndex(ContactsContract.Contacts.LOOKUP_KEY));
Uri uri = Uri.withAppendedPath(ContactsContract.Contacts.CONTENT_VCARD_URI, lookupKey);
AssetFileDescriptor fd;
try {
fd = this.getContentResolver().openAssetFileDescriptor(uri, "r");
FileInputStream fis = fd.createInputStream();
byte[] buf = new byte[(int) fd.getDeclaredLength()];
fis.read(buf);
String vCard = new String(buf);
vCardArray.add(vCard);
Log.println(Log.ASSERT, "Vcard", vCard);
} catch (Exception e1) {
e1.printStackTrace();
}
cursor.moveToNext();
}

} else {
Log.d("vCardERROR", "No Contacts in Your Phone");
}

}

最佳答案

vCard 3.0要求模仿类型包含字符集,例如
Content-Type: text/vcard; charset=ISO-8859-1

尝试设置!可能有帮助

关于java - 如何导出vCard 3.0?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47177861/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com