1.W43KにマイクロSDを挿して電話帳を保存
2.スマートフォンアドレス帳移行ツールでIMPORTすればOK
ちなみにW43Kのアドレス帳はvcf形式になっていた
csvに変換してから適当に編集してからIS02にIMPORTした
vcf→csv
#!/usr/bin/perl use feature qw(say); use warnings; use strict; our %date; our @order; while (<DATA>){ chomp; $date{$_}=1; push (@order,$_); print "$_,"; } print "\n"; my $infile=shift || "20100801.vcf"; open (FH,$infile) or die $!; my %hash; while (<FH>){ chomp; my ($key,$value) = split (/:/); &check($key); unless (defined $hash{$key}){ $hash{$key}=$value; } elsif ($key eq "EMAIL") { $hash{"EMAIL2"}=$value; } else { die "Error!"; } if ($key eq "END"){ for (@order){ $hash{$_} ||=""; print "$hash{$_},"; } print "\n"; %hash=(); } } close FH; sub check { unless ($date{$_[0]}){ die "Data Error -> $_[0]"; } } __END__ BEGIN VERSION N FN SORT-STRING TEL;TYPE=WORK TEL;TYPE=CELL TEL;TYPE=PCS TEL;TYPE=HOME TEL;TYPE=FAX EMAIL EMAIL2 BDAY X-GN END
csv→vcf
#!/usr/bin/perl use feature qw(say); use warnings; use strict; our @order; while (){ chomp; push (@order,$_); } my $infile = shift || "adress.csv"; open (FH,$infile) or die $!; $_=; while ( ){ chomp; my @list=split (/,/); s/^\"(.*)\"$/$1/ for @list; my $i=0; for (@order){ print "$_:".$list[$i]."\n" if (defined $list[$i] and $list[$i] ne ""); $i++; } } close FH; __END__ BEGIN VERSION N FN SORT-STRING TEL;TYPE=WORK TEL;TYPE=CELL TEL;TYPE=PCS TEL;TYPE=HOME TEL;TYPE=FAX EMAIL EMAIL BDAY X-GN END
0 件のコメント:
コメントを投稿