Cách chuyển đổi tệp JSON sang CSV trong Node.js

Chuyển đổi tệp JSON thành CSV trong Node.js

JSON(Ký hiệu đối tượng JavaScript) là định dạng dựa trên văn bản tiêu chuẩn để lưu trữ và truyền dữ liệu giữa máy khách web và máy chủ web. CSV(Các giá trị được phân tách bằng dấu phẩy) cũng là một định dạng tệp văn bản để lưu trữ dữ liệu ở định dạng có cấu trúc bảng. Trong một số trường hợp nhất định, bạn có thể cần nhập các đối tượng từ điển vào các giá trị được phân tách bằng dấu phẩy trong các ứng dụng Node.js. Đối với những trường hợp như vậy, bài viết này trình bày cách chuyển đổi tệp JSON thành CSV trong Node.js.

Các chủ đề sau đây sẽ được đề cập trong bài viết này:

API REST chuyển đổi từ JSON sang CSV và SDK Node.js

Cách tốt nhất để chuyển đổi JSON sang CSV là sử dụng API Node.js SDK của GroupDocs.Conversion Cloud. Nó là một giải pháp chuyển đổi tài liệu và thư viện JSON sang CSV độc lập với nền tảng. Nó cho phép bạn chuyển đổi liền mạch các tài liệu và hình ảnh của bất kỳ định dạng tệp được hỗ trợ nào sang bất kỳ định dạng nào bạn cần. Bạn có thể dễ dàng chuyển đổi giữa hơn 50 loại tài liệu và hình ảnh như Word, PowerPoint, Excel, PDF, HTML, CAD, hình ảnh raster, v.v. Nó cũng cung cấp SDK .NET, Java, PHP, Ruby, Android và Python dưới dạng SDK thành viên gia đình chuyển đổi tài liệu cho Cloud API.

Bạn có thể cài đặt GroupDocs.Conversion Cloud cho dự án Node.js của mình bằng lệnh sau trong bảng điều khiển:

npm install groupdocs-conversion-cloud

Vui lòng lấy ID khách hàng và Bí mật khách hàng của bạn từ bảng điều khiển trước khi bạn bắt đầu làm theo các bước và ví dụ về mã có sẵn. Khi bạn có ID và bí mật của mình, vui lòng thêm mã như hình bên dưới:

# Nhập SDK Node.js trong ứng dụng nút của bạn từ http://api.groupdocs.cloud
global.groupdocs_conversion_cloud = require("groupdocs-conversion-cloud");
global.fs = require("fs");

// lấy clientId và clientSecret từ https://dashboard.groupdocs.cloud (yêu cầu đăng ký miễn phí).
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";

Cách chuyển đổi tệp JSON sang tệp CSV trong Node.js bằng API REST

Bạn có thể chuyển đổi json lồng nhau thành csv trong nodejs theo cách lập trình trên đám mây bằng cách thực hiện theo các bước dưới đây:

  1. Tải lên tệp JSON lên đám mây
  2. Chuyển đổi tệp JSON của nodejs sang tệp CSV
  3. Tải xuống tệp CSV đã chuyển đổi

Tải lên tệp JSON

Đầu tiên, tải tệp JSON lên đám mây bằng cách sử dụng mẫu mã sau:

// mở tệp trong IOStream từ ổ đĩa hệ thống của bạn.
var resourcesFolder = 'H:\\groupdocs-cloud-data\\sample-file.json';
// Đọc tài liệu
fs.readFile(resourcesFolder, (err, fileStream) => {
  // xây dựng FileApi
  var fileApi = groupdocs_conversion_cloud.FileApi.fromConfig(config);
  // tạo yêu cầu tệp tải lên
  var request = new groupdocs_conversion_cloud.UploadFileRequest("sample-file.json", fileStream, myStorage);
  // cập nhật dử liệu
  fileApi.uploadFile(request)
    .then(function (response) {
      console.log("Expected response type is FilesUploadResult: " + response.uploaded.length);
    })
    .catch(function (error) {
      console.log("Error: " + error.message);
    });
});

Do đó, tệp JSON đã tải lên sẽ có trong phần tệp của trang tổng quan trên đám mây.

Chuyển đổi định dạng JSON sang CSV trong Node.js

Bạn có thể chuyển đổi json sang nút csv theo chương trình bằng cách thực hiện theo các bước như được đưa ra dưới đây:

  • Tạo một phiên bản của ConvertApi
  • Tạo một phiên bản của ConvertSettings
  • Đặt tên lưu trữ và đường dẫn tệp JSON đầu vào
  • Gán “csv” cho định dạng
  • Bây giờ, cung cấp đường dẫn tệp csv đầu ra
  • Tạo ConvertDocumentRequest với ConvertSettings
  • Chuyển đổi bằng cách gọi phương thức convertDocument() với ConvertDocumentRequest

Ví dụ mã sau đây cho thấy cách chuyển đổi JSON thành CSV trong Nodejs bằng API REST:

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.json";
  settings.format = "csv";
  settings.outputPath = "nodejs-testing/sample-file.csv";

  try {
    // Tạo yêu cầu tài liệu chuyển đổi
    const request = new groupdocs_conversion_cloud.ConvertDocumentRequest(settings);
    await convertApi.convertDocument(request);
  } 
  catch (err) {
    throw err;
  }
}

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

Tải xuống tệp đã chuyển đổi

Mẫu mã trên sẽ lưu tệp CSV đã chuyển đổi trên đám mây. Bây giờ bạn đã biết cách chuyển đổi JSON sang CSV trong node. Tiếp theo, tải xuống tệp csv bằng mẫu mã sau:

// xây dựng FileApi để tải xuống tệp đã chuyển đổi
var fileApi = groupdocs_conversion_cloud.FileApi.fromConfig(config);
// tạo yêu cầu tệp donwload
let request = new groupdocs_conversion_cloud.DownloadFileRequest("nodejs-testing/sample-file.csv", myStorage);
// tải xuống tệp và loại phản hồi Luồng
fileApi.downloadFile(request)
    .then(function (response) {
        // lưu tập tin trong thư mục hệ thống của bạn
        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);
    });

Trình chuyển đổi JSON sang CSV trực tuyến miễn phí

Làm cách nào để chuyển đổi JSON sang CSV trực tuyến miễn phí? Vui lòng thử cách sau để chuyển đổi JSON lớn sang CSV trực tuyến miễn phí, được phát triển bằng API trên.

Phần kết luận

Các tệp JSON và CSV được sử dụng rộng rãi để lưu trữ và truyền dữ liệu. Theo đó, bài viết này đề cập đến cách biến JSON thành CSV trong các ứng dụng Node.js. Bây giờ bạn biết:

  • cách chuyển đổi json sang csv bằng Node.js;
  • lập trình tải lên và tải xuống tệp csv đã chuyển đổi;
  • trình chuyển đổi json sang csv trực tuyến miễn phí;

Hơn nữa, bạn có thể tìm hiểu thêm về GroupDocs.Conversion Cloud API bằng cách sử dụng tài liệu. Chúng tôi cũng cung cấp phần Tham khảo API cho phép bạn hình dung và tương tác trực tiếp với các API của chúng tôi thông qua trình duyệt.

Đặt một câu hỏi

Bạn có thể đặt câu hỏi về cách chuyển đổi JSON sang định dạng CSV thông qua Diễn đàn hỗ trợ miễn phí của chúng tôi

Xem thêm