使用python和perl语言实现xlsx转化为csv

下面提供使用 Python 和 Perl 两种常用语言的示例代码,来实现将 Excel 文件 (.xlsx) 转换为 CSV 文件。

首先是 Python 的示例代码:

使用 Python 实现 xlsx 转换为 csv:

python 复制代码
# 导入所需模块
import pandas as pd

# 读取 Excel 文件并写入 CSV 文件
def convert_xlsx_to_csv(input_file, output_file):
    df = pd.read_excel(input_file)  # 读取 Excel 文件
    df.to_csv(output_file, index=False)  # 写入 CSV 文件

# 指定输入和输出文件名
input_excel_file = "input.xlsx"
output_csv_file = "output.csv"

# 执行转换
convert_xlsx_to_csv(input_excel_file, output_csv_file)

以上是使用 Python 完成 xlsx 转换为 csv 的示例,接下来是使用 Perl 的示例代码:

使用 Perl 实现 xlsx 转换为 csv:

perl 复制代码
# 导入所需模块
use strict;
use warnings;
use Spreadsheet::ParseXLSX;
use Text::CSV;

# 读取 Excel 文件并写入 CSV 文件
sub convert_xlsx_to_csv {
    my ($input_file, $output_file) = @_;

    my $parser = Spreadsheet::ParseXLSX->new();
    my $workbook = $parser->parse($input_file);

    die "Could not parse $input_file: $!" unless $workbook;

    my $csv = Text::CSV->new({binary => 1});
    open my $fh, ">:encoding(utf8)", $output_file or die "$output_file: $!";

    for my $worksheet ( $workbook->worksheets() ) {
        for my $row (0..$worksheet->maxrow) {
            $csv->combine($worksheet->row($row));
            print $fh $csv->string(), "\n";
        }
    }

    close $fh;
}

# 指定输入和输出文件名
my $input_excel_file = "input.xlsx";
my $output_csv_file = "output.csv";

# 执行转换
convert_xlsx_to_csv($input_excel_file, $output_csv_file);

您可以根据实际情况调整文件名和路径。这两个示例展示了分别使用 Python 和 Perl 实现 xlsx 到 csv 转换的方法。

相关推荐
0思必得010 分钟前
[Web自动化] CSS基础概念和介绍
前端·css·python·自动化·html·web自动化
计算机徐师兄13 分钟前
Python基于Django的MOOC线上课程推荐数据分析与可视化系统(附源码,文档说明)
python·数据分析·django·慕课线上课程推荐·慕课线上课程推荐可视化系统·pytho线上课程推荐可视化·线上课程推荐数据分析可视化系统
free-elcmacom16 分钟前
Python实战项目<2>使用Graphviz绘制流程框图
开发语言·python·graphviz
ljuncong22 分钟前
python的装饰器怎么使用
开发语言·python
该用户已不存在36 分钟前
没有这7款工具,难怪你的Python这么慢
后端·python
serve the people40 分钟前
tensorflow 零基础吃透:RaggedTensor 的不规则形状与广播机制 2
人工智能·python·tensorflow
Hello.Reader42 分钟前
Flink ML 基本概念Table API、Stage、Pipeline 与 Graph
大数据·python·flink
chen_note44 分钟前
Python面向对象、并发编程、网络编程
开发语言·python·网络编程·面向对象·并发编程
信看1 小时前
树莓派CAN(FD) 测试&&RS232 RS485 CAN Board 测试
开发语言·python
brent4231 小时前
DAY24推断聚类后簇的类型
python