NO IMAGE

手機增加了個聯通卡,想在之前的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...");
}