• 締切済み

Data::XLSX::Parser について

perlにて.xlsxフォーマットのExcelファイルを読む場合、1万行以上の場合、Spreadsheet::XLSX->new(ファイル名) を用いると1分以上の時間がかかります。 それでより読み込み速度の速い他のCPANモジュールを探していたら、Data::XLSX::Parser を見つけたので、それをインストールして試用することにしました。 それで、このモジュールのドキュメントにあったSYNOPSISの、以下のソースを作成し実行してみました。 use Data::Dumper; use Data::XLSX::Parser; my $parser = Data::XLSX::Parser->new; $parser->add_row_event_handler(sub { my ($row) = @_; print Dumper $row; }); $parser->parse(ファイル名); 実行した結果、 Can't locate object method "parse" via package "Data::XLSX::Parser" at xlsx.pl line "$parser->parse(ファイル名);"の行番 となり実行不可となります。即ち、このモジュールにはparseというメソッドは無いと言っているようです。 この原因は何で、どう対処したら実行可能になるかを教えて頂きたいと思います。 また、このモジュール全般に関する詳細なドキュメントを見つけられていないので、どこにアクセスすればその情報が得られるかも教えて頂きたいと思います。

みんなの回答

  • heburusu
  • ベストアンサー率85% (140/164)
回答No.1

こんにちわ。 parseというメソッドは存在しないみたいですね。 使ったことがないので、推測ですがparseの代わりにopen を使ってみるとどうでしょうか? このモジュール自体アルファ版ということなので、動かない可能性もありますが…。

参考URL:
http://cpansearch.perl.org/src/ACIDLEMON/Data-XLSX-Parser-0.13/lib/Data/XLSX/Parser.pm
noname#259191
質問者

お礼

heburusuさん コメントありがとうございました。 使ったことがないということなので、実際どうなるかは分からないということですね。 アルファ版で動かないとしたら、そのようなものを公開すると閲覧者を混乱させるだけなので、開発者としてそのようなことはしないと信じたいですが..... http://cpansearch.perl.org/src/ACIDLEMON/Data-XLSX-Parser-0.13/lib/Data/XLSX/Parser.pm の内容は承知していて、ソース内にparseメソッドが無いことは分かった上で質問しました。 それを承知の上で、敢えてSYNOPSISそのままのソースで実行したところ、やはりエラーになったという経緯です。 そのままではらちが明かないので、上記URL最後に書かれているtypester@cpan.org(村瀬さん)宛に問い合わせを試みましたが、現在まで音沙汰が無い状況です。 現状がどうなっているかを含め、このモジュールの詳細を知る手だてを見いだせない状況で困っています。 ありがとうございました。

すると、全ての回答が全文表示されます。

関連するQ&A