perl - 为什么 Perl 的 Spreadsheet::ParseExcel 永远不会从 $parser->parse ('test.xls' 返回)?

标签 perl excel parsing spreadsheet

该电子表格与 Excel 97-2003 兼容,权限为 777

use strict;
use Spreadsheet::ParseExcel;
print "Content-type: text/html\n\n";   
my $parser   = Spreadsheet::ParseExcel->new();
print "<br>gets here:".__LINE__; 
my $workbook = $parser->parse('test.xls');
print "<br>never gets here:".__LINE__; 

最佳答案

你用最新的Spreadsheet::ParseExcel ?当前版本是 0.57。

我看到您将其作为 CGI 运行。您可以从命令行(本地,使用相同的测试文件)运行它并检查是否有任何错误消息?

也尝试使用 eval (从命令行运行仍然更好)并检查 $parser 是否已定义:

print '$parser is undef<br>' unless defined $parser;
eval {
  my $workbook = $parser->parse('test.xls');
};
print "Error message from eval: $@<br>";

尝试另一个 Excel 文件。

如果错误仍然未知并且使用特定的 Excel 文件,请在 bug tracker 中报告错误.

关于perl - 为什么 Perl 的 Spreadsheet::ParseExcel 永远不会从 $parser->parse ('test.xls' 返回)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2191496/

相关文章:

linux - 使用 Perl Unix 命令转义序列

perl - Perl 中的 if( -f <filename> ) 有什么作用?

excel - 根据条件选择行 excel

c# - 如何使用 ExcelLibrary 更改 Excel 文件中的单元格样式?

python - 根据从 csv 文件中提取的值创建复杂的嵌套字典。 - Python

Perl 哈希值 : $hash{key} vs $hash->{key}

perl - 在没有安装 sendmail 且没有任何邮件模块的情况下使用 Perl 发送电子邮件

vba - 如何为 VBA 应用程序创建产品 key 以防止软件的非法分发?

java - 将 com.google.gson.JsonObject 转换为 org.json.simple.JSONObject

c++ - 灵气序列解析问题