如何在 Node.js 中使用 REST API 将 Excel 转换为 CSV 格式

如何在 Node.js 中使用 REST API 将 Excel 转换为 CSV 格式

Excel 文件以行和列的表格形式存储数据,而 CSV 文件以逗号分隔的文本格式存储信息。 CSV 文件速度更快,占用的内存也更少,而 Excel 文件在导入数据时占用的内存更多。 CSV 文件是简单的纯文本文件,更容易导入到电子表格或存储数据库中。在某些情况下,您可能需要将 Excel 文件转换为 CSV 文件。因此,本文介绍如何在 Node.js 中使用 REST API 将 Excel 转换为 CSV 格式。

本文应涵盖以下主题:

Excel 到 CSV 转换 REST API 和 Node.js SDK

为了将 Excel 转换为 CSV,使用 GroupDocs.Conversion Cloud 的 Node.js SDK API。它是一个独立于平台的 XLSX 到 CSV 库和文档转换解决方案。它允许您将任何 支持的文件格式 的文档和图像无缝转换为您需要的任何格式。 Word、PowerPoint, Excel、PDF、HTML、CAD、光栅图像等50多种文档和图像之间轻松转换。它还提供.NET、Java、PHP、Ruby、Android和Python SDK作为其文档转换家族成员 为 Cloud API。

您可以在控制台中使用以下命令将 GroupDocs.Conversion Cloud 安装到您的 Node.js 项目:

npm install groupdocs-conversion-cloud

在开始执行步骤和可用代码示例之前,请从 仪表板 获取您的客户端 ID 和客户端密码。获得 ID 和密码后,请添加如下所示的代码:

# 从 http://api.groupdocs.cloud 在您的节点应用程序中导入 Node.js SDK
global.groupdocs_conversion_cloud = require("groupdocs-conversion-cloud");
global.fs = require("fs");

// 从 https://dashboard.groupdocs.cloud 获取 clientId 和 clientSecret(需要免费注册)。
global.clientId = "xxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx";
global.clientSecret = "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx";
global.myStorage = "test-internal-storage";
const config = new groupdocs_conversion_cloud.Configuration(clientId, clientSecret);
config.apiBaseUrl = "https://api.groupdocs.cloud";

如何在 Node.js 中使用 REST API 将 Excel 转换为 CSV 文件

您可以按照以下步骤在云端以编程方式将 excel 转换为 nodejs 中的 csv:

  1. 上传 excel文件到云端
  2. 转换 NodeJS XLSX 到 CSV 文件
  3. 下载转换后的CSV文件

上传 XLSX 文件

首先,使用以下代码示例将 excel 文件上传到云端:

// 从系统驱动器打开 IOStream 中的文件。
var resourcesFolder = 'H:\\groupdocs-cloud-data\\sample-file.xlsx';
// 读取文件
fs.readFile(resourcesFolder, (err, fileStream) => {
  // 构建FileApi
  var fileApi = groupdocs_conversion_cloud.FileApi.fromConfig(config);
  // 创建上传文件请求
  var request = new groupdocs_conversion_cloud.UploadFileRequest("sample-file.xlsx", fileStream, myStorage);
  // 上传文件
  fileApi.uploadFile(request)
    .then(function (response) {
      console.log("Expected response type is FilesUploadResult: " + response.uploaded.length);
    })
    .catch(function (error) {
      console.log("Error: " + error.message);
    });
});

因此,上传的 Excel 文件将在云端仪表板的 文件部分 中可用。

在 Node.js 中将 XLSX 转换为 CSV 格式

您可以按照以下步骤以编程方式将 xlsx 转换为 csv 节点:

  • 创建 ConvertApi 的实例
  • 创建 ConvertSettings 的实例
  • 设置存储名称和输入的excel文件路径
  • 将“csv”分配给格式
  • 现在,提供输出 csv 文件路径
  • 使用 ConvertSettings 创建 ConvertDocumentRequest
  • 通过使用 ConvertDocumentRequest 调用 convertDocument() 方法进行转换

以下代码示例显示了如何使用 REST API 在 Nodejs 中将 Excel 转换为 CSV:

const convert = async () => {
  const convertApi = groupdocs_conversion_cloud.ConvertApi.fromKeys(clientId, clientSecret);

  const settings = new groupdocs_conversion_cloud.ConvertSettings();
  settings.storageName = myStorage;
  settings.filePath = "nodejs-testing/sample-file.xlsx";
  settings.format = "csv";
  settings.outputPath = "nodejs-testing/sample-file.csv";

  try {
    // 创建转换文档请求
    const request = new groupdocs_conversion_cloud.ConvertDocumentRequest(settings);
    await convertApi.convertDocument(request);
  } 
  catch (err) {
    throw err;
  }
}

convert()
.then(() => {
  console.log("Successfully converted XLSX file to CSV format");
})
.catch((err) => {
  console.log("Error occurred while converting the Excel file:", err);
})
如何在 Node.js 中使用 REST API 将 Excel 转换为 CSV

如何在 Node.js 中使用 REST API 将 Excel 转换为 CSV

下载转换后的文件

上面的代码示例会将转换后的 CSV 文件保存在云端。现在你知道如何在节点中将 Excel 转换为 CSV。接下来,使用以下代码示例下载 csv 文件:

// 构建 FileApi 以下载转换后的文件
var fileApi = groupdocs_conversion_cloud.FileApi.fromConfig(config);
// 创建下载文件请求
let request = new groupdocs_conversion_cloud.DownloadFileRequest("nodejs-testing/sample-file.csv", myStorage);
// 下载文件和响应类型 Stream
fileApi.downloadFile(request)
    .then(function (response) {
        // 将文件保存在系统目录中
        fs.writeFile("H:\\groupdocs-cloud-data\\sample-file.csv", response, "binary", function (err) { });
        console.log("Expected response type is Stream: " + response.length);
    })
    .catch(function (error) {
        console.log("Error: " + error.message);
    });

免费的 Excel 到 CSV 在线转换器

如何免费在线将 Excel 转换为 CSV?请尝试以下免费在线将 Excel 转换为 CSV,它是使用上述 API 开发的。

结论

Excel 和 CSV 文件被广泛用于存储和传输数据。据此,本文介绍了如何在 Node.js 应用程序中将 XLSX 转换为 CSV。现在你知道了:

  • 如何使用 Node.js 将 xlsx 转换为 csv;
  • 以编程方式上传和下载转换后的 csv 文件;
  • 免费在线 excel 到 csv 转换器;

此外,您可以使用 文档 了解有关 GroupDocs.Conversion Cloud API 的更多信息。我们还提供了一个 API 参考 部分,让您可以直接通过浏览器可视化我们的 API 并与之交互。

问一个问题

您可以通过我们的 免费支持论坛 询问有关如何将 XLSX 转换为 CSV 格式的问题

也可以看看