Chuyển đổi json thành bảng nodejs

Trong một bài viết trước, chúng tôi đã xem xét việc chuyển đổi tệp CSV thành một mảng JSON trong Node. ứng dụng js. Bài viết này là phần tiếp theo của bài viết trước, nơi bạn sẽ biết cách chuyển đổi một mảng JSON thành tệp CSV

Để thực hiện chuyển đổi JSON sang CSV, chúng tôi sẽ sử dụng mô-đun json-2-csv từ Trình quản lý gói nút (NPM). Gói này chuyển đổi một mảng tài liệu JSON thành chuỗi CSV. Nó tự động tạo các tiêu đề cột dựa trên các khóa của tài liệu JSON. Các tài liệu lồng nhau sẽ có '. ' nối giữa các phím

Tạo một ứng dụng

Tạo một thư mục dự án mới trong hệ thống tệp cục bộ của bạn và chuyển sang vị trí này trong thiết bị đầu cuối của bạn. Bây giờ gõ lệnh sau để khởi tạo một Node. ứng dụng js

$ npm init -y

Lệnh trên sẽ tạo một tệp

$ npm install json-2-csv --save
9 trong thư mục gốc. Tiếp theo, cài đặt phần phụ thuộc bắt buộc duy nhất —
$ npm install json-2-csv --save
0 bằng cách nhập lệnh sau

$ npm install json-2-csv --save

Chuyển đổi JSON sang CSV

Để chuyển đổi một mảng JSON thành tệp CSV, hãy tạo một tệp mới có tên

$ npm install json-2-csv --save
1 trong thư mục gốc dự án của bạn

$ touch app.js

Nếu lệnh

$ npm install json-2-csv --save
2 không có sẵn, chỉ cần tạo tệp theo cách thủ công. Mở tệp
$ npm install json-2-csv --save
1 trong trình chỉnh sửa yêu thích của bạn và thêm đoạn mã sau

ứng dụng. js

// require json-2-csv module
const converter = require('json-2-csv')

// declare a JSON array
const todos = [
  {
    id: 1,
    title: 'delectus aut autem',
    completed: false
  },
  {
    id: 2,
    title: 'quis ut nam facilis et officia qui',
    completed: false
  },
  {
    id: 3,
    title: 'fugiat veniam minus',
    completed: false
  }
]

// convert JSON array to CSV string
converter.json2csv(todos, (err, csv) => {
  if (err) {
    throw err
  }

  // print CSV string
  console.log(csv)
})

Ví dụ trên rất dễ hiểu. Nó sẽ in ra CSV sau trên bảng điều khiển

________số 8

Viết CSV vào tệp

Để ghi chuỗi CSV đầu ra vào một tệp để xử lý thêm, chỉ cần sử dụng mã JavaScript sau

// convert JSON array to CSV string
converter.json2csv(todos, (err, csv) => {
  if (err) {
    throw err
  }

  // print CSV string
  console.log(csv)

  // write CSV to a file
  fs.writeFileSync('todos.csv', csv)
})

Đọc hướng dẫn này để tìm hiểu thêm về cách ghi tệp trong Nút. ứng dụng js

Đọc JSON từ tệp

Nếu mảng JSON của bạn được lưu trữ trong một tệp, bạn có thể dễ dàng đọc nó bằng cách sử dụng mô-đun

$ npm install json-2-csv --save
4 gốc và sau đó thực hiện chuyển đổi như bên dưới

tệp ứng dụng. js

$ npm install json-2-csv --save
1

lời hứa

Thích sử dụng lời hứa? . Mô-đun

$ npm install json-2-csv --save
0 cung cấp một phương thức đặc biệt gọi là
$ npm install json-2-csv --save
6 trả về một lời hứa thay vì lấy một cuộc gọi lại làm đối số

Đây là một ví dụ

lời hứa ứng dụng. js

$ npm install json-2-csv --save
4

Async-Await

Mô-đun

$ npm install json-2-csv --save
0 cũng hỗ trợ cú pháp chờ đợi không đồng bộ. Đây là một ví dụ

ứng dụng không đồng bộ. js

$ npm install json-2-csv --save
6

Mã nguồn. Tải xuống mã nguồn hoàn chỉnh từ GitHub có sẵn theo giấy phép MIT

Sự kết luận

Chúng tôi đã xem xét cách sử dụng mô-đun

$ npm install json-2-csv --save
0 để chuyển đổi một mảng JSON thành tệp CSV trong một Nút. ứng dụng js

Hãy xem tài liệu mô-đun

$ npm install json-2-csv --save
0 để tìm hiểu thêm về tất cả các tùy chọn có sẵn. Bạn cũng có thể sử dụng nó để chuyển đổi chuỗi CSV trở lại mảng tài liệu JSON ban đầu