excel转csv

在 Java 中将 Excel 转换为 CSV

我们知道 Excel 工作簿广泛用于组织数据、执行财务分析、数据输入、数据管理、会计、制图和绘图等。但是,对于导入和导出数据,我们依赖逗号分隔值(CSV) 文件。它是通过简单文本文件交换结构化信息的方法之一。在本文中,我们将使用 Java SDK 以编程方式将 Excel 转换为 CSV。

Excel 到 CSV 转换 API

Aspose.Cells Cloud SDK for Java 是一个基于 REST 的 API,提供创建、编辑和转换 Excel 为 CSV、Excel 为 PDF、Excel 为 HTML 和各种其他支持的格式。现在为了使用 SDK,第一步是在 maven 构建类型的 pom.xml 中添加以下引用。

<repositories>
    <repository>
        <id>AsposeJavaAPI</id>
        <name>Aspose Java API</name>
        <url>https://repository.aspose.cloud/repo/</url>
    </repository>
</repositories>
<dependencies>
    <dependency>
        <groupId>com.aspose</groupId>
        <artifactId>aspose-cells-cloud</artifactId>
        <version>22.8</version>
    </dependency>
</dependencies>

添加 Cloud SDK 的引用后,请在 Aspose Cloud 上注册一个帐户,并在 Cloud Dashboard 中查找/创建客户端 ID 和客户端密码。

在 Java 中将 Excel 转换为 CSV

请按照下面给出的说明将 XLSX 转换为 CSV 格式。

  • 创建 CellsApi 实例,同时提供客户端凭据作为输入参数
  • 指定输入 Excel 的名称、结果格式为 CSV 以及输出文件名
  • 使用 uploadFile(…) 方法将输入的 Excel 工作簿上传到云存储
  • 最后调用方法cellsWorkbookGetWorkbook(…)发起转换操作
// 有关更多示例,请访问 https://github.com/aspose-cells-cloud/aspose-cells-cloud-java

try
    {
    // 从 https://dashboard.aspose.cloud/ 获取 ClientID 和 ClientSecret
    String clientId = "bbf94a2c-6d7e-4020-b4d2-b9809741374e";
    String clientSecret = "1c9379bb7d701c26cc87e741a29987bb";
  
    // 使用客户端凭据创建 CellsApi 实例
    CellsApi api = new CellsApi(clientId,clientSecret);
    		
    // 输入的Excel工作簿名称
    String fileName = "source.xlsx";
    
    // 工作簿加密时的密码详细信息
    String password = null;
    
    // 指定是否将工作簿行设置为自动调整。
    Boolean isAutoFit = true;
    // 指定是否只保存表数据。只用pdf来excel。
    Boolean onlySaveTable = true;
    // 结果文件格式
    String format = "CSV";
    		
    // 从本地系统加载文件
    File file = new File("c://Users/nayyer/"+fileName);	
    
    // 将输入 XLSB 上传到云存储
    api.uploadFile("input.xlsx", file, "Internal");

    // 执行文档转换操作
    File response = api.cellsWorkbookGetWorkbook("input.xlsx",  password,format, 
    			            isAutoFit, onlySaveTable, null,"Internal",  "Resultant.csv","Internal", null);        
            
    // 打印成功信息
    System.out.println("Excel to CSV sucessfully converted !");
    }catch(Exception ex)
    {
        System.out.println(ex);
    }
excel转csv文件预览

image1:- Excel 到 CSV 文件预览

上例中使用的示例文件可以从 myDocument.xlsxResultant.csv 下载。

将本地 XLSX 转换为 CSV

在本节中,我们将学习如何在不将输入文件上传到云存储的情况下将 XLSX 转换为 CSV 的步骤。所以请按照下面给出的说明进行操作。

  • 创建 CellsApi 实例,同时提供客户端凭据作为输入参数
  • 指定输入 Excel 的名称、结果格式为 CSV 以及输出文件名
  • 第三,调用方法 cellsWorkbookPutConvertWorkbook(…) 来启动 XLSX 到 CSV 的转换
// 有关更多示例,请访问 https://github.com/aspose-cells-cloud/aspose-cells-cloud-java

try
    {
    // 从 https://dashboard.aspose.cloud/ 获取 ClientID 和 ClientSecret
    String clientId = "bbf94a2c-6d7e-4020-b4d2-b9809741374e";
    String clientSecret = "1c9379bb7d701c26cc87e741a29987bb";

    // 使用客户端凭据创建 CellsApi 实例
    CellsApi api = new CellsApi(clientId,clientSecret);
    		
    // 输入 XLSX 工作簿的名称
    String fileName = "myDocument.xlsx";
    // 工作簿加密时的密码详细信息
    String password = null;
    // 结果文件格式
    String format = "CSV";
    		
    // 从本地系统加载文件
    File file = new File("c://Users/nayyer/"+fileName);	
    
    // 将 XLSX 转换为 CSV 操作
    File response = api.cellsWorkbookPutConvertWorkbook(file, format, password, "Converted.csv", null, null);  
            
    // 打印成功信息
    System.out.println("Excel to CSV sucessfully converted !");
    }catch(Exception ex)
    {
        System.out.println(ex);
    }

使用 cURL 命令将 XLSX 转换为 CSV

cURL 命令可用于执行 XLSX 到 CSV 的转换。因此,第一步是在执行以下命令时生成 JWT 访问令牌(您需要提供在云仪表板上指定的个性化客户端凭证详细信息)

curl -v "https://api.aspose.cloud/connect/token" \
-X POST \
-d "grant_type=client_credentials&client_id=bbf94a2c-6d7e-4020-b4d2-b9809741374e&client_secret=1c9379bb7d701c26cc87e741a29987bb" \
-H "Content-Type: application/x-www-form-urlencoded" \
-H "Accept: application/json"

生成 JWT 后,请执行以下命令将 XLSX 转换为 CSV 并将输出保存在云存储中。请注意,输入 XLSX 已在云存储中可用。

curl -v -X GET "https://api.aspose.cloud/v3.0/cells/myDocument(1).xlsx?format=CSV&isAutoFit=false&onlySaveTable=false&outPath=converted.csv&checkExcelRestriction=true" \
-H  "accept: application/json" \
-H  "authorization: Bearer <JWT Token>"

结论

在本文中,我们了解了如何将 Excel 转换为 CSV 的详细信息。我们注意到可以使用 Java 代码片段以及通过 cURL 命令执行转换。如果您在使用 API 时遇到任何问题,请随时通过 产品支持论坛 与我们联系。

相关文章

我们强烈建议访问以下链接以了解更多信息: