LOGO OA教程 ERP教程 模切知识交流 PMS教程 CRM教程 开发文档 其他文档  
 
网站管理员

XLS转XLSX[C#,JavaScript]

admin
2023年12月30日 0:58 本文热度 676

工作中有一些2003版之前的Excel文件,现在想把他们批量转换成2007+的格式,这里总结3种方法,复杂度依次递增,完美度依次递增。

1. JavaScript

利用js-xlsx包 ,可以在NodeJs环境中进行xls到xlsx的转换,非常简单,示例代码如下:
先安装依赖npm install xlsx

const XLSX = require('xlsx');
var oldFile= XLSX.readFile('./test.xls');
XLSX.writeFile(oldFile, './test.xlsx');

优点
快,不依赖Office,易部署
缺点
只适合纯文字类的转换,无法转换公式、样式、图片、图表。

2. C# NPOI

NPOI是从Java的POI移植过来的,速度也非常快,需要在nuget安装NPOI依赖,Install-Package NPOI

using NPOI.HSSF.UserModel;
using NPOI.XSSF.UserModel;
void ConvertWorkbook()
{
    using (var streamRead = new FileStream(@"./test.xls", FileMode.Open, FileAccess.Read))
    using (var streamWrite = new FileStream(@"./test.xlsx", FileMode.OpenOrCreate, FileAccess.Write))
    {
        var book = new HSSFWorkbook(streamRead );
        var newBook = new XSSFWorkbook();
        var copiedSheets = Enumerable.Range(0, book.NumberOfSheets).Select(i => book.CloneSheet(i));
        copiedSheets.Select((sheet, index) => new {sheet, index}).ToList()
            .ForEach(item => newBook.Insert(item.index, item.sheet));
        newBook.Write(streamWrite);
    }
}

优点
速度非常快,不依赖Office
缺点
无法转换图片、图表。

3.C# Excel

这个是必杀技,100%成功率和兼容性,先安装nuget依赖,Install-Package Microsoft.Office.Interop.Excel

void ConvertWorkbook()
{
    var app = new Microsoft.Office.Interop.Excel.Application {Visible = false};
    var book = app.Workbooks.Open(@"./test.xls");
    //注意,新的文件名没后缀
    book.SaveAs(Filename: @"./test", FileFormat: Microsoft.Office.Interop.Excel.XlFileFormat.xlOpenXMLWorkbook);
    book.Close();
    app.Quit();
}

优点
各种格式、类型都兼容
缺点
需要在电脑上安装Excel,运行起来速度有点慢


该文章在 2023/12/30 1:00:20 编辑过
关键字查询
相关文章
正在查询...
点晴ERP是一款针对中小制造业的专业生产管理软件系统,系统成熟度和易用性得到了国内大量中小企业的青睐。
点晴PMS码头管理系统主要针对港口码头集装箱与散货日常运作、调度、堆场、车队、财务费用、相关报表等业务管理,结合码头的业务特点,围绕调度、堆场作业而开发的。集技术的先进性、管理的有效性于一体,是物流码头及其他港口类企业的高效ERP管理信息系统。
点晴WMS仓储管理系统提供了货物产品管理,销售管理,采购管理,仓储管理,仓库管理,保质期管理,货位管理,库位管理,生产管理,WMS管理系统,标签打印,条形码,二维码管理,批号管理软件。
点晴免费OA是一款软件和通用服务都免费,不限功能、不限时间、不限用户的免费OA协同办公管理系统。
Copyright 2010-2024 ClickSun All Rights Reserved