本文共 996 字,大约阅读时间需要 3 分钟。
手机增加了个联通卡,想在之前的e71上用移动卡,于是涉及到把iphone的通信录转移到e71上去,之前都晓得从iphone上导出为vcf格式,然后放入到e71的存储卡的其他/通信录这个目录下即可。我先用的91助手导出iphone的通信录为vcf,然后发现e71导入为乱码,仔细对比为文中的字符编码问题。又用itools导出iphone通信录发现字符编码问题没有了,但是itools出来的是一个整体的vcf文件,这样e71还是导入不完整,于是想办法从itools导出的vcf中分离出来,根据vcf的格式,写了个简单java代码如下进行分割,然后一起复制到e71的存储卡对应位置即可了。代码如下:
public static void main(String[] args) throws Exception { String path = "c:\\Contacts.vcf"; BufferedReader br = new BufferedReader(new InputStreamReader(new FileInputStream(path), "utf-8")); String str = ""; StringBuffer sb = new StringBuffer(); int i = 0; while((str = br.readLine()) != null) { i++; sb.append(str).append(System.getProperty("line.separator")); if(str.trim().equals("END:VCARD")) { // 写入文件 FileOutputStream fos = new FileOutputStream("c:\\TEL\\"+i+".vcf"); OutputStreamWriter osw = new OutputStreamWriter(fos, "UTF-8"); osw.write(sb.toString()); osw.flush(); sb = new StringBuffer(); } } System.out.println("end..."); }
转载地址:http://nlini.baihongyu.com/