`
j2ee_zhongqi
  • 浏览: 208716 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

Perl 读写excel

    博客分类:
  • Perl
阅读更多
1.读取excel:
   
use strict;
    use Spreadsheet::ParseExcel;

    my $parser   = Spreadsheet::ParseExcel->new();
    my $workbook = $parser->Parse('Book1.xls');

    for my $worksheet ( $workbook->worksheets() ) {

        my ( $row_min, $row_max ) = $worksheet->row_range();
        my ( $col_min, $col_max ) = $worksheet->col_range();

        for my $row ( $row_min .. $row_max ) {
            for my $col ( $col_min .. $col_max ) {

                my $cell = $worksheet->get_cell( $row, $col );
                next unless $cell;

                print "Row, Col    = ($row, $col)\n";
                print "Value       = ", $cell->value(),       "\n";
                print "Unformatted = ", $cell->unformatted(), "\n";
                print "\n";
            }
        }
    }

2.写excel:
use Spreadsheet::WriteExcel;   
#************生成Excel文档****************   
my $xl = Spreadsheet::WriteExcel->new("TEST.xls");   
#生成Excel表   
my $xlsheet = $xl->add_worksheet(“TestSheet”);   
#添加格式(表头)   
$rptheader = $xl->add_format(); # Add a format   
$rptheader->set_bold();   
$rptheader->set_size('12');   
$rptheader->set_align('center');   
#添加格式(表内容)   
$normcell = $xl->add_format(); # Add a format   
$normcell->set_size('9');   
$normcell->set_align('center');   
$normcell->set_bg_color('22');   
#设置列的宽度   
$xlsheet->set_column('A:A',10);   
$xlsheet->set_column('B:B',12);   
$xlsheet->set_column('C:C',17);   
#写表头(格式是使用上面添加的表头格式)   
$xlsheet->write("A2","Number", $rptheader);   
$xlsheet->write("B2","Name",$rptheader);   
$xlsheet->write("C2","Language",$rptheader);   
#写内容(格式是使用上面添加的表内容格式)   
$xlsheet->write("A3","1", $normcell);   
$xlsheet->write("B3","Test",$normcell);   
$xlsheet->write("C3","Perl",$normcell);   
#关闭操作excel的对象.   
$xl->close();  
#!/usr/bin/perl
use Spreadsheet::WriteExcel;
#************生成Excel文档****************
my $xl = Spreadsheet::WriteExcel->new("TEST.xls");
#生成Excel表
my $xlsheet = $xl->add_worksheet(“TestSheet”);
#添加格式(表头)
$rptheader = $xl->add_format(); # Add a format
$rptheader->set_bold();
$rptheader->set_size('12');
$rptheader->set_align('center');
#添加格式(表内容)
$normcell = $xl->add_format(); # Add a format
$normcell->set_size('9');
$normcell->set_align('center');
$normcell->set_bg_color('22');
#设置列的宽度
$xlsheet->set_column('A:A',10);
$xlsheet->set_column('B:B',12);
$xlsheet->set_column('C:C',17);
#写表头(格式是使用上面添加的表头格式)
$xlsheet->write("A2","Number", $rptheader);
$xlsheet->write("B2","Name",$rptheader);
$xlsheet->write("C2","Language",$rptheader);
#写内容(格式是使用上面添加的表内容格式)
$xlsheet->write("A3","1", $normcell);
$xlsheet->write("B3","Test",$normcell);
$xlsheet->write("C3","Perl",$normcell);
#关闭操作excel的对象.
$xl->close();


解决中文乱码:
use Spreadsheet::WriteExcel;   
use Encode;#(这里增加Encode)   
#************生成Excel文档****************   
my $xl = Spreadsheet::WriteExcel->new("TEST.xls");   
#生成Excel表   
my $xlsheet = $xl->add_worksheet(decode('utf8' ,“测试写入Excel”));#(中文名称)   
#添加格式(表头)   
$rptheader = $xl->add_format(); # Add a format   
$rptheader->set_bold();   
$rptheader->set_size('12');   
$rptheader->set_align('center');   
#添加格式(表内容)   
$normcell = $xl->add_format(); # Add a format   
$normcell->set_size('9');   
$normcell->set_align('center');   
$normcell->set_bg_color('22');   
#设置列的宽度   
$xlsheet->set_column('A:A',10);   
$xlsheet->set_column('B:B',12);   
$xlsheet->set_column('C:C',17);   
#写表头(格式是使用上面添加的表头格式)(这里是输入中文)   
$xlsheet->write("A2",decode(‘utf8’,"号码"), $rptheader);   
$xlsheet->write("B2", decode(‘utf8’,"名称"),$rptheader);   
$xlsheet->write("C2", decode(‘utf8’,"语言"),$rptheader);   
#写内容(格式是使用上面添加的表内容格式)(这里是输入中文)   
$xlsheet->write("A3", decode(‘utf8’,"1"), $normcell);   
$xlsheet->write("B3", decode(‘utf8’,"测试"),$normcell);   
$xlsheet->write("C3", decode(‘utf8’,"Perl"),$normcell);   
#关闭操作excel的对象.   
$xl->close();  
分享到:
评论

相关推荐

    Perl读写excel

    它能够读取Excel文件中的工作簿、工作表和单元格内容。下面是一个简单的例子: ```perl use Spreadsheet::ParseExcel; my $parser = Spreadsheet::ParseExcel->new(); my $workbook = $parser->parse('example....

    perl读写excel

    通过perl读写excel 通过perl读写excel 通过perl读写excel 通过perl读写excel

    perl读取EXCEL文件输出到XML

    Perl 读取 EXCEL 文件输出到 XML Perl 是一种功能强大的编程语言,广泛应用于数据处理、网络开发和自动化任务。EXCEL 是一种流行的电子表格软件,常用于数据存储和分析。XML(Extensible Markup Language)是一种...

    perl解析excel文件

    1. **Spreadsheet::ParseXLSX**:这是Perl中用于读取Excel 2007及以上版本(.xlsx文件)的库。它不依赖Microsoft Office或任何其他外部程序,可以解析工作表、单元格、公式等。要使用这个库,首先需要在你的Perl环境...

    perl读取excel内容,并发送html邮件!中文不乱码

    perl读取excel内容,并发送html邮件!中文不乱码,直接下载可用,只需要改一下文件路径,这是已经上生产的脚本

    perl读取Excel文档

    赛哦ifuowoe弱任务哦尔维尔哦温柔温柔品牌人哦 飞洒票房破而 分

    用Perl操作Excel2007 (xlsx) with Excel-Writer-XLSXL

    在IT领域,特别是数据分析、报表制作等场景中,能够高效地读写Excel文件是一项重要的技能。Perl作为一种功能强大的脚本语言,在处理文本和数据方面具有显著优势。对于需要与Microsoft Office 2007及以上版本兼容的....

    perl Excel操作

    首先,Perl中实现Excel操作主要依赖于第三方模块,如Spreadsheet::ParseXLSX(用于读取Excel 2007及以上版本的xlsx文件)和Spreadsheet::WriteExcel(用于创建Excel文件)。这两个模块可以从CPAN(Comprehensive ...

    Perl中使用Win32_OLE模块读写Excel的方法1

    通过Win32::OLE,Perl程序员可以在不依赖特定平台的情况下,对Excel文档进行读取和写入操作,这对于跨平台的数据处理非常有用。 **使用Perl和Win32::OLE模块读写Excel的优势** 1. **跨平台兼容性**:Perl语言本身...

    perl操作Excel示例

    为了简化这一过程,`Spreadsheet::WriteExcel`模块被开发出来,它提供了一系列强大的功能来帮助开发者轻松创建、读取、修改Excel文件。本篇文章将根据给定的内容详细介绍`Spreadsheet::WriteExcel`模块的功能,并...

    Perl SpreadSheet_Excel

    5. **测试**:安装完成后,可以编写简单的Perl脚本来测试 `Spreadsheet::ParseExcel` 是否能正确读取Excel文件。例如,创建一个脚本读取Excel文件的每个工作表和单元格数据,验证安装是否成功。 使用 `Spreadsheet:...

    perl example for read excel

    在这个场景中,"perl example for read excel" 指的是使用Perl来读取Excel文件的示例。Excel文件通常包含表格数据,而Perl通过一些库模块,如Spreadsheet::ParseXLSX或Spreadsheet::Read,可以方便地解析和操作这些...

    excel_Perl_源码

    例如,`Text::CSV`模块用于读取和写入CSV文件,而`Spreadsheet::WriteExcel`或`Excel::Writer::XLSX`模块则用于创建Excel文件。以下是一个基本的流程概述: 1. **数据提取**: - 使用`Text::CSV`打开和解析数据...

    可以自动生成Verilog的Testbench的Perl脚本

    1. 安装Perl环境和任何必要的Perl模块,如Text::ParseWords、File::Basename等。 2. 解压Perlilog-0.3压缩包到工作目录。 3. 将Verilog源代码文件放置在指定位置,或者修改Perl脚本以指向源代码文件。 4. 运行...

    perl-site的压缩包

    1. Spreadsheet::ParseXLSX:这是一个非常流行的 Perl 模块,用于读取 Excel 2007 及以后版本(.xlsx)的文件。它提供了解析工作表、行、列和单元格数据的功能,而无需依赖 Microsoft Office 库。你可以通过这个模块...

    perl Spreadsheet

    这个模块允许程序员在Perl脚本中创建、读取和修改Excel工作簿,为数据处理和自动化提供了极大的便利。 在Perl Spreadsheet中,主要有两个核心模块:Spreadsheet::WriteExcel 和 Spreadsheet::ParseExcel。...

    perl操作office

    1. **读取Excel文件**:`read.pl`可能是一个示例脚本,它使用`Spreadsheet::ParseXLS`模块来读取Excel文件(例如`600795.xls`)。以下是一个简单的读取示例: ```perl use Spreadsheet::ParseXLS; my $parser = ...

    【效率提升-Perl脚本】根据Excel列表信息提取输入输出接口生成Verilog文件

    根据Excel列表信息提取输入输出接口生成Verilog文件

    perl SVG包

    结合Perl的其他库,如DBI(数据库接口)或Excel::Writer::XLSX,可以将动态生成的数据可视化,形成直观的报告或分析结果。 `svg_lib`这个文件可能是包含SVG库的一些示例、测试代码或者额外的图形资源。在实际开发中...

    php直接读excel Spreadsheet_Excel_Reader

    下面我们将深入探讨如何使用Spreadsheet_Excel_Reader库读取Excel文件: 1. **安装与配置** 在你的项目中,首先需要下载Spreadsheet_Excel_Reader库。如果使用Composer管理依赖,可以通过`composer require ...

Global site tag (gtag.js) - Google Analytics