+ -
当前位置:首页 → 问答吧 → 初学perl,请教个问题...excel的..

初学perl,请教个问题...excel的..

时间:2010-11-08

来源:互联网

初学perl..学习了一下基本语法..看到了可以操作excel表格..很激动..于是..
  1. #!usr/bin/perl
  2. use strict;
  3. use Win32::OLE qw(in with);
  4. use Win32::OLE::Const 'Microsoft Excel';
  5. $Win32::OLE::Warn = 3;                                # die on errors...

  6. my $excel_file = "excel_test.xls";
  7. my $Excel = Win32::OLE->GetActiveObject('Excel.Application') || Win32::OLE->new('Excel.Application', 'Quit');
  8. if (!-e $excel_file)
  9. {
  10.         print STDOUT "excel file not exist\n";
  11. }
  12. my $excel_book = $Excel->Workbooks->Open($excel_file);
  13. my $excel_sheet = $excel_book->WorkSheets(1);
  14. my $result_value = $excel_sheet->Cells(1, 'A')->{Value};
  15. print STDOUT $result_value;
复制代码
问题就在这个 $excel_file...
我这个xls文件和我的perl文件放在同一个目录下的,这样写也不行么? 好像会提示打不开或者error 0x800.....
如果换成绝对路径就可以了,比如 "E:\\perl_test\\excel_test.xls";
但这样方便么? 在一个项目中如果用到了这个东东..难道还要考虑这个项目放在哪个分区之类的么?/.///

作者: HonryZZ   发布时间: 2010-11-08

回复 HonryZZ
我没用过这个模块,不过真是模块的问题的话,要么你向维护人员提交 bug,要么使用 File::Spec,CWD 等模块把相对路径自动转换成绝对路径。

作者: Monox   发布时间: 2010-11-08

回复 HonryZZ


    cwd也是这个文件夹吗?

作者: zhlong8   发布时间: 2010-11-08