UltKit

Chuyển JSON sang CSV

Đưa phản hồi API, dữ liệu xuất từ ứng dụng và file log từ JSON thành hàng và cột. Tải lên file .json, .jsonl hoặc .ndjson và tải xuống file CSV với mỗi bản ghi một dòng.

Chuyển đổi dữ liệu

hoặc thả tệp CSV, TSV, TXT … vào đây ·

Tối đa 95 MB mỗi tệp· Tối đa 20 tệp· Xóa sau 30 phút

Đầu ra

Tệp được xử lý trên máy chủ của chúng tôi và bị xóa sau 30 phút.

Cách sử dụng công cụ này

  1. 1

    Tải lên dữ liệu JSON

    Thêm các tệp chứa một mảng đối tượng, hoặc JSON Lines với mỗi dòng là một đối tượng. Tối đa 20 tệp, mỗi tệp 95 MB.

  2. 2

    Kiểm tra cài đặt CSV

    Mục Mã hóa ký tự được chọn sẵn UTF-8 with BOM để Excel trên Windows đọc đúng chữ có dấu. Đặt Ký tự phân cách thành dấu chấm phẩy nếu Excel của bạn yêu cầu, hoặc bật Đặt mọi giá trị trong ngoặc kép cho các công cụ nhập dữ liệu nghiêm ngặt.

  3. 3

    Chuyển và tải xuống

    Nhấn Chuyển sang CSV. Dòng tiêu đề liệt kê mọi khóa có trong các bản ghi; hãy mở tệp hoặc nhập vào bất kỳ nơi nào hỗ trợ CSV.

Chuyển JSON sang CSV biến danh sách bản ghi thành một bảng: mỗi đối tượng thành một dòng, mỗi khóa thành một cột, và các trường lồng nhau được trải ra thành các cột riêng.

Vì sao nên chuyển JSON sang CSV

JSON là cách các dịch vụ web trao đổi dữ liệu với nhau. Hệ thống đơn hàng, nhà cung cấp thanh toán, API phân tích và công cụ tạo biểu mẫu đều trả dữ liệu dưới dạng JSON, còn các cơ sở dữ liệu NoSQL như MongoDB và Firebase lưu tài liệu theo dạng gần giống JSON. Điều đó lý tưởng cho chương trình nhưng khó chịu với mọi người còn lại, vì một tệp JSON 5 MB trong trình soạn thảo văn bản chỉ là một bức tường dấu ngoặc nhọn.

CSV thì đánh đổi ngược lại. Nó không thể biểu diễn cấu trúc lồng nhau hay kiểu dữ liệu, nhưng mọi bảng tính, công cụ BI, trình nhập CRM và trình nạp cơ sở dữ liệu đều đọc được. Chuyển đổi là cách để quản lý vận hành đưa danh sách đơn hàng vào bảng pivot, để nhà phân tích dữ liệu chuyển dữ liệu lấy từ API vào bảng SQL, và để trưởng nhóm hỗ trợ chia sẻ bản xuất đã lọc cho đồng nghiệp. Khi dữ liệu ban đầu là XML, chuyển XML sang CSV thực hiện việc làm phẳng tương tự cho các thẻ.

Chuyển JSON lồng nhau sang CSV: cách làm phẳng dữ liệu

Làm phẳngchuẩn hóa · bỏ lồng nhau
Ghi một đối tượng lồng nhau thành các cột bổ sung trên cùng một dòng, đặt tên theo đường dẫn đến từng giá trị, nên {"customer":{"city":"Austin"}} trở thành cột customer.city chứa Austin.
Hai đơn hàng từ phản hồi API, sau khi làm phẳng
[{"id":5012,"total":42.9,"paid":true,"customer":{"name":"Ada Okafor","city":"Austin"}},
 {"id":5013,"total":18,"paid":false,"customer":{"name":"Lin Wei","city":"Toronto"}}]

id,total,paid,customer.name,customer.city
5012,42.9,true,Ada Okafor,Austin
5013,18,false,Lin Wei,Toronto

Các biến thể JSON và định dạng bảng đầu ra

from ↓ · to →CSVTSVXLSX
JSONJSON to CSV: yesJSON to TSV: yesJSON to XLSX: yes
JSONLJSONL to CSV: yesJSONL to TSV: yesJSONL to XLSX: yes
NDJSONNDJSON to CSV: yesNDJSON to TSV: yesNDJSON to XLSX: yes
YAMLYAML to CSV: yesYAML to TSV: yesYAML to XLSX: yes
XMLXML to CSV: yesXML to TSV: yesXML to XLSX: yes
supported not offeredJSON Lines và NDJSON chứa mỗi dòng một đối tượng JSON, là định dạng xuất của BigQuery và nhiều công cụ ghi log.

Danh sách nằm bên trong một bản ghi là thứ duy nhất mà một dòng phẳng không thể chứa gọn gàng. Một đơn hàng có năm mặt hàng thực chất là hai bảng: đơn hàng và mặt hàng. Nếu các danh sách đó quan trọng, hãy tách mảng ra một tệp JSON riêng và chuyển đổi riêng, để mỗi mặt hàng có một dòng riêng kèm mã đơn hàng bên cạnh.

Thông tin về định dạng JSON và CSV

JSON

Dữ liệu JavaScript Object Notation (JSON)

JSON là định dạng văn bản gọn nhẹ cho dữ liệu có cấu trúc, được Douglas Crockford phổ biến đầu thập niên 2000 và chuẩn hóa thành RFC 8259 và ECMA-404. Định dạng biểu diễn object, mảng, chuỗi, số, boolean và null bằng cú pháp đơn giản, dễ đọc. JSON là định dạng mặc định cho API web, tệp cấu hình và trao đổi dữ liệu giữa các ứng dụng trong hầu hết ngôn ngữ lập trình. Định dạng không có sẵn chú thích, kiểu ngày tháng hay schema, và tệp lớn lồng nhiều cấp rất khó đọc nếu không có trình xem.

Nén
–
Độ trong suốt
–
Ảnh động
–
Ra mắt
2001 · Douglas Crockford
Công cụ chuyển đổi JSON

CSV

Giá trị phân tách bằng dấu phẩy (CSV)

CSV là định dạng văn bản thuần cho bảng, trong đó mỗi dòng là một hàng và dấu phẩy phân tách các cột. Định dạng đã được dùng từ những ngày đầu của ngành máy tính và được mô tả trong RFC 4180, dù nhiều biến thể dùng dấu chấm phẩy hoặc tab và các bảng mã văn bản khác nhau. Gần như mọi bảng tính, cơ sở dữ liệu và công cụ phân tích đều nhập và xuất được CSV, nên đây là định dạng mặc định để chuyển dữ liệu giữa các hệ thống. CSV chỉ lưu giá trị, không có công thức, định dạng trình bày, nhiều trang tính hay kiểu dữ liệu.

Nén
–
Độ trong suốt
–
Ảnh động
–
Ra mắt
–
Công cụ chuyển đổi CSV

Người ta chuyển JSON sang CSV khi dữ liệu lấy từ API hoặc ứng dụng cần được phân tích, chia sẻ hoặc nhập bởi người làm việc với bảng tính chứ không phải với mã.

Câu hỏi thường gặp về chuyển JSON sang CSV

Cấu trúc JSON nào chuyển sang CSV gọn gàng nhất?

Một mảng đối tượng có phần lớn các khóa giống nhau, ví dụ [{"id":1,"name":"Ada"},{"id":2,"name":"Lin"}]. Mỗi đối tượng trở thành một dòng và mỗi khóa trở thành một cột. Một đối tượng đơn ở ngoài cùng với các bản ghi nằm trong một thuộc tính cũng dùng được, miễn là bản thân các bản ghi là một danh sách.

Nếu một số bản ghi có khóa mà bản ghi khác không có thì sao?

Dòng tiêu đề là hợp của tất cả các khóa, nên trường chỉ xuất hiện ở một số bản ghi vẫn có cột riêng. Các bản ghi không có trường đó sẽ để trống ô tương ứng. Điều này bình thường với dữ liệu API, nơi các trường tùy chọn đơn giản là bị bỏ qua.

Giá trị true, false và null được ghi như thế nào?

CSV không có kiểu dữ liệu, chỉ có văn bản. Giá trị boolean được ghi bằng chữ true và false, số được ghi bằng chữ số, và null thành ô trống. Nếu công cụ nhập cần 1 và 0 thay cho true và false, hãy thay thế trong bảng tính sau khi chuyển đổi.

Vì sao Excel hiển thị ký tự lạ thay cho chữ có dấu?

Excel trên Windows mặc định dùng bảng mã theo khu vực cho tệp CSV, trừ khi tệp bắt đầu bằng dấu thứ tự byte (BOM). Vì vậy trang này ghi UTF-8 with BOM. Các công cụ trên Linux hoặc trong quy trình xử lý dữ liệu đôi khi ưu tiên UTF-8 thuần; hãy đổi Mã hóa ký tự cho các trường hợp đó.

Nên chọn CSV hay file Excel cho dữ liệu JSON?

Chọn CSV nếu bước tiếp theo là nhập vào hệ thống khác, nạp vào cơ sở dữ liệu hoặc chạy script. Chọn bảng tính nếu mọi người sẽ đọc và chỉnh sửa dữ liệu, vì chuyển JSON sang Excel giữ nguyên kiểu dữ liệu và tránh việc Excel tự đoán lại các cột như mã ZIP khi mở.

Có thể lấy lại JSON gốc từ file CSV không?

Chỉ còn bản phẳng. Mảng và các cấp lồng sâu đã được trải thành cột hoặc văn bản, và sự khác biệt giữa kiểu số và chuỗi không còn được lưu, nên chuyển ngược lại chỉ cho ra các đối tượng phẳng. Hãy giữ lại JSON gốc nếu bạn cần cấu trúc ban đầu.