perl 读取excel中的日期时间格式遇到的问题
上一篇 /
下一篇 2012-04-10 01:10:14
/ 个人分类:perl相关
今天用perl读取excel表,其中excel表某一列是日期时间格式,读取的时候碰到些问题,比如某一列 2012-3-1 10:07:00 pm
出错的代码
#!/usr/bin/perl
use Win32::OLE;
use Win32::OLE qw( in with);
use Win32::OLE::Const 'Microsoft Excel';
$Win32::OLE::Warn = 3;
my $Excel = Win32::OLE->GetActiveObject('Excel.Application') || Win32::OLE->new('Excel.Application', 'Quit');
my $Book = $Excel->Workbooks->Open('E:\清单核对\清单核对\test\test.xls');
my $Sheet = $Book->Worksheets(1);
$info = $Sheet->Cells(2, 17)->{Value};
print $info;
$Book->Close;
这时候输出是
E:\清单核对\清单核对\test>perl 258.pl
Win32::OLE::Variant=SCALAR(0x1a11c60)
并没有得到想要的值
后来网上搜索,还需要增加一条代码use Win32::OLE::Variant;
修改后的代码
#!/usr/bin/perl
use Win32::OLE;
use Win32::OLE qw( in with);
use Win32::OLE::Const 'Microsoft Excel';
use Win32::OLE::Variant;
$Win32::OLE::Warn = 3;
my $Excel = Win32::OLE->GetActiveObject('Excel.Application') || Win32::OLE->new('Excel.Application', 'Quit');
my $Book = $Excel->Workbooks->Open('E:\清单核对\清单核对\test\深圳市**用例校验-2012-02月份.xls');
my $Sheet = $Book->Worksheets(1);
$info = $Sheet->Cells(2, 17)->{Value};
print $info;
$Book->Close;
输出
E:\清单核对\清单核对\test>perl 258.pl
2012-2-13 上午 10:07:00
抽空还得看看perldoc Win32::OLE::Variant;,彻底搞清楚是怎么回事
收藏
举报
TAG: