找回密码
 立即注册
首页 业界区 业界 国产化Excel处理组件Spire.XLS教程:使用 Java 将 CSV ...

国产化Excel处理组件Spire.XLS教程:使用 Java 将 CSV 转换为 Excel

兑谓 昨天 19:05
1.png

将 CSV 文件转换为 Excel 是 Java 开发者在进行数据报表、分析流程或文件转换时常见的操作。虽然可以手动解析 CSV 文件,但这种方式不仅代码繁琐,而且格式控制能力有限。借助如 Spire.XLS for Java 这样的专业 Excel 库,可以极大简化处理流程,同时实现对布局、样式、模板以及数据整合的全面控制。
E-iceblue旗下Spire系列产品,是文档处理领域的佼佼者,支持国产化信创本文将带你逐步了解多种使用场景,介绍如何借助 Spire.XLS for Java 使用 Java 将 CSV 转换为 Excel,包括基本的导入导出、样式设置、注入模板数据、以及将多个 CSV 文件合并为一个 Excel 工作簿等内容。
Spire.XLS for Java免费试用下载,请联系Spire官方授权代理商慧都科技
加入Spire技术交流QQ群(125237868),与更多开发者一起提升文档开发技能。
在 Java 项目中配置 Spire.XLS

在进行 CSV 到 Excel 的转换前,需要将 Spire.XLS for Java 引入到项目中。该库支持 .xls 与 .xlsx 文件格式,并提供简洁的 API,无需安装 Microsoft Office 即可创建和操作 Excel 文档。
通过 Maven 引入
  1. <repositories>
  2.     <repository>
  3.         <id>com.e-iceblue</id>
  4.         <name>e-iceblue</name>
  5.         <url>https://repo.e-iceblue.cn/repository/maven-public/</url>
  6.     </repository>
  7. </repositories>
  8. <dependencies>
  9.     <dependency>
  10.         <groupId>e-iceblue</groupId>
  11.         spire.xls</artifactId>
  12.         <version>15.7.7</version>
  13.     </dependency>
  14. </dependencies>
复制代码
手动引入 JAR 包
你也可以下载 Spire.XLS for Java,并手动将 JAR 文件添加到项目的类路径中。
Spire.XLS for Java免费试用下载,请联系Spire官方授权代理商慧都科技
加入Spire技术交流QQ群(125237868),与更多开发者一起提升文档开发技能。
使用 Java 将 CSV 文件转换为 Excel

最基本的使用场景是将一个 .csv 文件转换为 .xlsx 或 .xls 格式。使用 Spire.XLS,只需两步即可完成:使用 loadFromFile() 加载 CSV,使用 saveToFile() 保存为 Excel 文件。
  1. import com.spire.xls.*;
  2. public class CsvToXlsx {
  3.     public static void main(String[] args) {
  4.         Workbook workbook = new Workbook();
  5.         workbook.loadFromFile("data.csv", ",");
  6.         workbook.saveToFile("output.xlsx", ExcelVersion.Version2013);
  7.     }
  8. }
复制代码
若要输出为 .xls 格式,只需将版本参数改为 ExcelVersion.Version97to2003。
以下是转换结果示意图:
2.png

此外,你还可以自定义分隔符,或设置起始的行和列位置,非常适合已有标题或固定布局的场景:
  1. workbook.loadFromFile("data_semicolon.csv", ";", 3, 2);
复制代码
使用 Java 设置 Excel 输出格式

在生成用于报表或客户展示的 Excel 文件时,设置样式能显著提升可读性与专业感。Spire.XLS 支持通过 CellStyle 类自定义字体、颜色、数字格式等,并支持自动调整列宽。
示例:设置样式并自动调整列宽

[code]import com.spire.xls.*;public class CsvToXlsx {    public static void main(String[] args) {        Workbook workbook = new Workbook();        workbook.loadFromFile("data.csv", ",");        Worksheet sheet = workbook.getWorksheets().get(0);        // 设置表头样式        CellStyle headerStyle = workbook.getStyles().addStyle("Header");        headerStyle.getFont().isBold(true);        headerStyle.getFont().setSize(14f);        headerStyle.setKnownColor(ExcelColors.LightYellow);        for (int col = 1; col  name.endsWith(".csv"));        Workbook workbook = new Workbook();        workbook.getWorksheets().clear();        Worksheet sheet = workbook.getWorksheets().add("Sample");        int startRow = 1;        boolean isFirstFile = true;        for (File csv : csvFiles) {            Workbook temp = new Workbook();            temp.loadFromFile(csv.getAbsolutePath(), ",");            Worksheet tempSheet = temp.getWorksheets().get(0);            int startReadRow = isFirstFile ? 1 : 2;            isFirstFile = false;            for (int r = startReadRow; r
您需要登录后才可以回帖 登录 | 立即注册