仕事でExcelドキュメントの値を直接読み込みたい場面がありいろいろ調べたのでその結果です。
今利用している言語がPHPって事もありライブラリを探ってみたところ2つ見つけました。
Spreadsheet_Excel_Reader
Excel_Peruser
どちらも使い方は簡単だったのですが、Excelファイルによっては読み込めない場合があり安定性がいまひとつでした。
他に方法はないかと考えたらサーバにPerl入ってるしPerlで組んでも問題ないだろうと判断。
探してみたらあっさりCPANにありました。
Spreadsheet::ParseExcel
こっちも利用はいたって簡単。更に読み込みたいファイルも無事に読み込めました。
■Excelファイル(Excel 2002)
■結果
0 0:a 1:b
1 0:123 1:456
2 0:感じ 1:カタカナ
3 0: 1:ハンカク
■ソース
#!/usr/bin/perl
use strict;
use warnings;
use Spreadsheet::ParseExcel;
use Spreadsheet::ParseExcel::FmtJapan;
my $format = new Spreadsheet::ParseExcel::FmtJapan->new(Code => ’sjis’);
my $excel = new Spreadsheet::ParseExcel;
my $book = $excel->Parse("test.xls", $format);
my $sheet = $book->{"Worksheet"}[0];
my $maxRow = $sheet->{"MaxRow"};
my $maxCol = $sheet->{"MaxCol"};
for(my $row=0; $row<=$maxRow; $row++) {
print $row." ";
[…]
Posted on 5月 11th, 2008 by t
Filed under: プログラム&技術系, お仕事 | No Comments »