【问题标题】:Unix Script Convert CSV into XLSXUnix 脚本将 CSV 转换为 XLSX
【发布时间】:2016-12-25 17:26:07
【问题描述】:

我正在尝试将 CSV 文件转换为 XLSX。

我之前在 XLS 中成功完成过,但是在尝试在 XLSX 中进行时,我不断收到错误。

这是我正在尝试执行的示例脚本。

https://github.com/jmcnamara/excel-writer-xlsx/blob/master/examples/a_simple.pl

我已经在我的脚本中包含了所有这些库:- !/usr/bin/perl -w

使用 lib qw(/Scripts/perl/excel-writer-xlsx-master/lib);

使用 lib qw(/Scripts/perl/File-Temp-0.19/lib);

使用 lib qw(/Scripts/perl/Archive-Zip-1.30/lib);

使用 lib qw(/Scripts/perl/IO-1.25/lib);

使用 lib qw(/Scripts/perl/Compress-Raw-Zlib-2.069/lib);

错误:- 在 @INC 中找不到模块 Compress::Raw::Zlib 的可加载对象 在 require /Archive-Zip-1.30/lib/Archive/Zip.pm 行编译失败 12

XLS 成功使用此包:Spreadsheet-WriteExcel-2.40

下载的 Perl XLSX 模块

http://search.cpan.org/dist/Excel-Writer-XLSX/lib/Excel/Writer/XLSX.pm

【问题讨论】:

  • 我已经突出显示了错误。
  • 看起来您刚刚解压了从 CPAN 下载的 tar 文件。这不是你安装 Perl 模块的方式。特别是像 Compress::Raw::Zlib 这样的用 C 语言编写的模块需要在安装期间进行编译。阅读:How to install CPAN modules.

标签: excel perl csv unix


【解决方案1】:

您在这些 use lib 语句中指定的路径看起来不正确。确保您实际安装了这些模块(即,使用 cpancpanm 工具)。简单地从 CPAN 网站解压 tarball 是不够的,而且也不起作用,因为其中一些模块必须经过编译才能运行。

正确安装这些模块后,它们应该在默认的 Perl @INC 路径上可用,并且您不需要使用任何额外的 use lib 行。

【讨论】:

    【解决方案2】:

    您可以尝试使用 python 脚本将任何 ff - 平面文件转换为所需的文件格式。 csv2xls.py 参考链接:https://pypi.python.org/pypi/csv2xls/0.4

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2013-07-15
      • 2018-08-27
      • 1970-01-01
      • 2012-08-12
      • 2013-07-01
      • 2018-08-08
      • 2015-07-04
      相关资源
      最近更新 更多