现在的位置: 首页 > 综合 > 正文

perl 生成 .vcf文件 以导入电话

2013年10月30日 ⁄ 综合 ⁄ 共 1134字 ⁄ 字号 评论关闭

#!/usr/bin/perl -w
use strict;

=head--comment
    公司发布的通信录是以excl文件的形式,要导入我的电话中肯定不行拉,电话
需要.vcf文件格式(lephone),也就是用91手机助手(AD)导入....

思路:
1.把excle表格中的信息复制出来,保存为csv文件(可以是/t或是,为分隔符都行),
  命名为phone.csv(这样就不用改角本),放到与角本相同目录下
2.运行角本,自动生成以名字命名的.vcf文件;
3.运行91手机助手,哈哈导入吧....

.vcf文件格式解释:http://baike.baidu.com/view/495045.htm

简单样式如下:

BEGIN:VCARD
N:姓名;;;;
ORG:单位
TEL;CELL:手机电话
EMAIL;PREF:主要的Email
X-IM;QQ:QQ号
CATEGORIES:信息中的分组
VERSION:3.0
END:VCARD

=cut

#  打开源信息文件  -- csv
open (FILEHANDLE,"phone.csv") or die "This file can not open! $!/n";
my @org = <FILEHANDLE>;   # read data from $inputDataFile
chomp(@org);
close FILEHANDLE;

# 对每一条记录进行操作:
foreach my $orgmsg (@org) {
    # 分解文件信息
    my ($name, $MOBILE, $ORG, $EMAIL, $MSN) = split(//t/,$orgmsg);
   
    # 新建一个.vcf文件
    open (FILEHANDLEGREATE, ">$name.vcf") or die "This file can not open! $!/n";

    print FILEHANDLEGREATE "BEGIN:VCARD/n";
    print FILEHANDLEGREATE "N:$name;;;;/n";
    print FILEHANDLEGREATE "ORG:$ORG/n";
    print FILEHANDLEGREATE "TEL;CELL:$MOBILE/n";
    print FILEHANDLEGREATE "EMAIL;PREF:$EMAIL/n";
    print FILEHANDLEGREATE "X-IM;WindowsLive:$MSN/n";
    print FILEHANDLEGREATE "CATEGORIES:$ORG/n";
    print FILEHANDLEGREATE "VERSION:3.0/nEND:VCARD/n";  
   
    close FILEHANDLEGREATE;
}

抱歉!评论已关闭.