如何在 Node.js 中使用 REST API 將 CSV 轉換為 Excel

在 Node.js 中使用 REST API 將 CSV 轉換為 Excel

CSV 或逗號分隔值是最靈活的數據格式,用於在不同的電子表格程序之間導入和導出數據。大多數數據上傳接口和應用程序都可以打開它。而 Excel(XLS 和 XLSX)文件格式用於存儲複雜的表格數據。如果您想在程序之間交換數據,將數據從一個應用程序導入和導出到另一個應用程序,那麼 CSV 文件格式是最佳選擇。今天,我們將學習如何在 Node.js 中使用 REST API 將 CSV 轉換為 Excel。在之前的一篇文章中,我們看到了[如何在 Node.js 中使用 REST API 將 Excel 轉換為 CSV 格式。](https://blog.groupdocs.cloud/zh-hant/conversion/convert-excel-to-csv-format-using- rest-api-in-node.js/)

本文應涵蓋以下主題:

CSV 到 Excel 轉換 REST API 和 Node.js SDK

為了將 CSV 轉換為 Excel 文件格式,使用 GroupDocs.Conversion Cloud 的 Node.js SDK API。它是一個獨立於平台的 Nodejs 文檔轉換庫。它允許您將任何 支持的文件格式 的文檔和圖像無縫轉換為您需要的任何格式。 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 將 CSV 轉換為 Excel 文件

您可以按照以下步驟在雲端以編程方式將 csv 轉換為 nodejs 中的 xls/xlsx 格式:

  1. 上傳 CSV文件到雲端
  2. 轉換 Nodejs CSV 到 Excel 文件
  3. 下載轉換後的XLSX文件

上傳 CSV 文件

首先,使用以下代碼示例將 excel 文件上傳到雲端:

// 從系統驅動器打開 IOStream 中的文件。
var resourcesFolder = 'H:\\groupdocs-cloud-data\\sample-file.csv';
// 讀取文件
fs.readFile(resourcesFolder, (err, fileStream) => {
  // 構造FileApi
  var fileApi = groupdocs_conversion_cloud.FileApi.fromConfig(config);
  // 創建上傳文件請求
  var request = new groupdocs_conversion_cloud.UploadFileRequest("sample-file.csv", 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 中將 CSV 轉換為 XLSX 格式

您可以按照以下步驟以編程方式將 csv 轉換為 nodejs 中的 excel xlsx:

  • 創建 ConvertApi 的實例
  • 創建 ConvertSettings 的實例
  • 設置存儲名稱和輸入的excel文件路徑
  • 將“csv”分配給格式
  • 現在,提供輸出 csv 文件路徑
  • 使用 ConvertSettings 創建 ConvertDocumentRequest
  • 通過使用 ConvertDocumentRequest 調用 convertDocument() 方法進行轉換

以下代碼示例顯示瞭如何使用 REST API 在 Nodejs 中將 CSV 轉換為 Excel 文件:

// 如何在 Node.js 中使用 REST API 將 CSV 轉換為 Excel 文件
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.csv";
  settings.format = "xlsx";
  settings.outputPath = "nodejs-testing/sample-file.xlsx";

  try {
    // 創建轉換文檔請求
    const request = new groupdocs_conversion_cloud.ConvertDocumentRequest(settings);
    await convertApi.convertDocument(request);
  } 
  catch (err) {
    throw err;
  }
}

convert()
.then(() => {
  console.log("Successfully converted CSV to XLSX file format:");
})
.catch((err) => {
  console.log("Error occurred while converting the Excel file:", err);
})

下載轉換後的文件

上面的代碼示例會將轉換後的 CSV 文件保存在雲端。現在你知道如何在 nodejs 中將 CSV 轉換為 Excel。接下來,使用以下代碼示例下載 excel 文件:

// 構建 FileApi 以下載轉換後的文件
var fileApi = groupdocs_conversion_cloud.FileApi.fromConfig(config);
// 創建下載文件請求
let request = new groupdocs_conversion_cloud.DownloadFileRequest("nodejs-testing/sample-file.xlsx", myStorage);
// 下載文件和響應類型 Stream
fileApi.downloadFile(request)
    .then(function (response) {
        // 將文件保存在系統目錄中
        fs.writeFile("H:\\groupdocs-cloud-data\\sample-file.xlsx", response, "binary", function (err) { });
        console.log("Expected response type is Stream: " + response.length);
    })
    .catch(function (error) {
        console.log("Error: " + error.message);
    });

免費的 CSV 到 Excel 在線轉換器

如何免費在線將 CSV 轉換為 Excel?請嘗試以下免費在線將 CSV 轉換為 Excel,它是使用上述 API 開發的。

結論

CSV 和 Excel 文件廣泛用於存儲和傳輸數據。據此,本文介紹瞭如何在 Node.js 應用程序中將 CSV 文件更改為 XLSX 文件。現在你知道了:

  • 如何使用 Node.js 將 CSV 轉換為 XLSX;
  • 以編程方式上傳 CSV,然後下載轉換後的 Excel 文件;
  • 免費在線 CSV 到 excel 轉換器;

此外,您可以使用 文檔 了解有關 GroupDocs.Conversion Cloud API 的更多信息。我們還提供了一個 API 參考 部分,讓您可以直接通過瀏覽器可視化我們的 API 並與之交互。

問一個問題

您可以通過我們的免費支持論壇 詢問有關如何將 CSV 轉換為 Excel 格式的問題

也可以看看