mx5 保存到手机mx5通讯录在哪失败 设置 开启权限

智能手机教程子分类魅族手机通讯录Contact.xml备份在flyme上的恢复(Java实现xml转vCard) - 推酷
魅族手机通讯录Contact.xml备份在flyme上的恢复(Java实现xml转vCard)
魅族M9买了一年多,系统没动过。直到某一天再也不能打电话发短信了,就换上了最新的flyme系统。然而之前备份了通讯录不能恢复了。
研究了一下才发现,之前备份了通讯录是在手机的Backup文件夹下,文件Contact/Contact.xml,而flyme不再支持Contact.xml的恢复。但是flyme支持vCard格式(*.vcf)导入。
对于一只程序猿来说,解决这个问题的方法必须是自己写程序。
于是研究了一下魅族通讯录备份文件Contact.xml和vCard(vcf)格式。
Contact.xml:
&?xml version=&1.0& encoding=&UTF-8& standalone=&yes& ?&
&ContactTable&
&Product&M9&/Product&
&SoftwareVersion&1.0.1&/SoftwareVersion&
&FileAs&张三&/FileAs&
&FirstName&张三&/FirstName&
&DisplayName&张三&/DisplayName&
&PhoneElement IsPrimary=&1& Value=&& Type=&0& /&
&/Contact&
&FileAs&李四&/FileAs&
&FirstName&李四&/FirstName&
&DisplayName&李四&/DisplayName&
&PhoneElement IsPrimary=&1& Value=&& Type=&0& /&
&/Contact&
&/ContactTable&
BEGIN:VCARD
VERSION:2.1
BEGIN:VCARD
VERSION:2.1
Contact.xml转vcf文件(Java):
public static void main(String[] args) throws DocumentException, IOException
// DOM4J读取Contact.xml文件
SAXReader reader = new SAXReader();
Document document = reader.read(new File(&H:\\Backup\\37M9\\Contact\\Contact.xml&));
Element root = document.getRootElement();
// 联系人List
List&?& contacts = root.elements(&Contact&);
// vcf文件内容
StringBuilder sb = new StringBuilder();
// 遍历xml中的每个联系人,往vcf字符串中追加
for(Object contactObj : contacts)
Element eleContact = (Element) contactO
String name = eleContact.elementText(&DisplayName&);
String number = eleContact.element(&PhoneElement&).attribute(&Value&).getValue();
sb.append(&BEGIN:VCARD\nVERSION:2.1\n&);
sb.append(&FN:&);
sb.append(name);
sb.append(&\nTEL;CELL:&);
sb.append(number);
sb.append(&\nEND:VCARD\n&);
// 字符串写入vcf文件
FileUtils.writeStringToFile(new File(&H:\\test.vcf&), sb.toString(), &utf-8&);
上面的代码需要两个jar文件:dom4j-1.6.1.jar和commons-io-2.4.jar。
最后把生成的vcf文件拷贝到手机中,在手机中打开这个vcf文件,就可以恢复以前所有的联系人了。
由于vCard文件比较通用,所以上面的代码应该还能实现魅族的Contact.xml备份导入联系人到魅族MX或者其他各种支持vCard的手机中。
已发表评论数()
请填写推刊名
描述不能大于100个字符!
权限设置: 公开
仅自己可见
正文不准确
标题不准确
排版有问题
主题不准确
没有分页内容
图片无法显示
视频无法显示
与原文不一致}

我要回帖

更多关于 魅族mx5通讯录在哪里 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信