如何将txt、excel文档里面的电话号码快速转换为vcf格式的电话簿导入手机
不会代码怎么办?
还能怎么办?
我来呗
把excel或者其他格式的文件给我,我给你转换,喝杯茶就行了:
-———>上茶链接<—
——————以下是能看懂代码的人的教程———————————————————————
研究了一下标准vcf格式文件长什么样子
BEGIN:VCARD
FN:385
TEL;type=CELL;type=VOICE;type=pref:18306228829
CID:12109794182
UID:12109794182
VERSION:3.0
END:VCARD
BEGIN:VCARD
长上面那样,FN是名字,pref后面的是手机号,CID=UID是个唯一码
既然知道它长什么样,就不用那么复杂的去借助其他工具转换
自己动手丰衣足食,直接读取号码,生成vcf文件
代码如下
public static void tovcf() {
FileInputStream fis = null;
InputStreamReader isr = null;
BufferedReader br = null; //用于包装InputStreamReader,提高处理性能。因为BufferedReader有缓冲的,而InputStreamReader没有。
try {
String str = "";
StringBuilder sb = new StringBuilder();
fis = new FileInputStream("E:\\phone.txt");// FileInputStream
// 从文件系统中的某个文件中获取字节
isr = new InputStreamReader(fis);// InputStreamReader 是字节流通向字符流的桥梁,
br = new BufferedReader(isr);// 从字符输入流中读取文件中的内容,封装了一个new InputStreamReader的对象
long cid = 12109793798L;
int name = 1;
while ((str = br.readLine()) != null) {
sb.append( "BEGIN:VCARD\n" +
"FN:"+name+"\n" +
"TEL;type=CELL;type=VOICE;type=pref:"+str+"\n" +
"CID:"+cid+"\n" +
"UID:"+cid+"\n" +
"VERSION:3.0\n" +
"END:VCARD\n");
cid++;
name++;
}
File f=new File("E:\\world.vcf");//新建一个文件对象,如果不存在则创建一个该文件
FileWriter fw;
try {
fw=new FileWriter(f);
fw.write(sb.toString());//将字符串写入到指定的路径下的文件中
fw.close();
} catch (IOException e) { e.printStackTrace(); }
} catch (FileNotFoundException e) {
System.out.println("找不到指定文件");
} catch (IOException e) {
System.out.println("读取文件失败");
} finally {
try {
br.close();
isr.close();
fis.close();
// 关闭的时候最好按照先后顺序关闭最后开的先关闭所以先关s,再关n,最后关m
} catch (IOException e) {
e.printStackTrace();
}
}
}
txt文档长这样
生成的vcf长这样
然后发送到微信或者qq
用手机打开,自动就能识别
识别结果
如有疑问,私信找我,留下wx或者邮箱,我看到就会回复的
还没有评论,来说两句吧...