Chuyển Đổi CSV Sang JSON Online

Dán CSVChọn dấu phân cáchChuyển đổi tự độngTải JSON về
Miễn phíChuyển đổi tức thìKhông cần đăng kýXử lý trên trình duyệt
Dấu phân cách:
Định dạng:
CSV
JSON
Kết quả JSON sẽ hiển thị ở đây...

Dấu phân cách CSV

Ký hiệuTênSử dụng
,Dấu phẩyCSV tiêu chuẩn (RFC 4180)
;Dấu chấm phẩyNgôn ngữ châu Âu (dùng phẩy cho thập phân)
\tTab (TSV)Xuất bảng tính, kết xuất cơ sở dữ liệu
|ỐngDữ liệu có dấu phẩy trong trường

Trường chứa dấu phân cách phải được bao bởi dấu ngoặc kép. Dấu ngoặc kép bên trong dùng cặp đôi: "".

3 định dạng JSON

1

Mảng đối tượng

Khuyến nghị

Mỗi hàng trở thành đối tượng JSON với khóa từ header. Phù hợp nhất cho API và JavaScript. [{"name": "Alice", "age": 28}]

2

Mảng lồng mảng

Gọn nhẹ

Mỗi hàng là một mảng con. Hàng header trở thành mảng đầu tiên. [["name","age"],["Alice",28]]

3

Đối tượng có khóa

Bảng tra cứu

Dùng cột đầu tiên làm khóa. {"Alice": {"age": 28}, "Bob": {"age": 35}}

Chuyển đổi phổ biến

Dữ liệu bảng tính

CSV chuẩn với dấu phẩy, 4 hàng, 4 cột

Phản hồi API

Dấu chấm phẩy, dữ liệu endpoint

Cấu hình ứng dụng

Phân cách bằng tab, key-value

Chuyển đổi CSV sang JSON là gì?

Chuyển đổi CSV sang JSON là quá trình biến đổi dữ liệu từ định dạng Comma-Separated Values (CSV) sang JavaScript Object Notation (JSON). Đây là thao tác xử lý dữ liệu phổ biến nhất khi bạn cần đưa dữ liệu bảng tính, kết xuất cơ sở dữ liệu hoặc file log vào ứng dụng web, API hoặc hệ thống xử lý dữ liệu hiện đại.

CSV là định dạng dữ liệu dạng bảng đơn giản nhất: mỗi dòng là một bản ghi, các trường được phân cách bởi dấu phẩy (hoặc dấu chấm phẩy, tab). CSV được hỗ trợ bởi mọi bảng tính (Excel, Google Sheets, LibreOffice), cơ sở dữ liệu, và công cụ phân tích dữ liệu. Tuy nhiên, CSV không hỗ trợ dữ liệu lồng nhau, kiểu dữ liệu, hoặc cấu trúc phức tạp.

JSON là tiêu chuẩn trao đổi dữ liệu của web hiện đại. JSON hỗ trợ đối tượng lồng nhau, mảng, chuỗi, số, boolean và null. Hầu hết các ngôn ngữ lập trình và framework đều có thư viện đọc/ghi JSON tích hợp sẵn. JSON là định dạng mặc định cho REST API, cấu hình ứng dụng và lưu trữ dữ liệu NoSQL.

Cách phân tích CSV hoạt động

Phân tích CSV thoạt nhìn có vẻ đơn giản nhưng thực tế phức tạp hơn nhiều do các quy tắc trích dẫn (quoting). Theo tiêu chuẩn RFC 4180, CSV tuân theo các quy tắc sau:

  • Dấu phân cách: Dấu phẩy là mặc định, nhưng nhiều vùng miền châu Âu dùng dấu chấm phẩy (vì họ dùng dấu phẩy cho số thập phân). Tab (TSV) phổ biến trong xuất dữ liệu.
  • Trường trích dẫn: Nếu trường chứa dấu phân cách, xuống dòng hoặc dấu ngoặc kép, toàn bộ trường phải được bao trong dấu ngoặc kép: "New York, NY"
  • Dấu ngoặc kép thoát: Dấu ngoặc kép bên trong trường trích dẫn được biểu diễn bằng cặp đôi: "Anh ấy nói ""xin chào"""
  • Xuống dòng trong trường: Cho phép bên trong trường trích dẫn: "Dòng 1\nDòng 2"

Công cụ này xử lý tất cả các trường hợp trên một cách chính xác. Quá trình phân tích diễn ra hoàn toàn trên trình duyệt của bạn bằng JavaScript thuần, không có dữ liệu nào được gửi đến server.

CSV vs JSON — So sánh toàn diện

Hai định dạng phục vụ mục đích khác nhau và hiểu rõ điểm mạnh yếu giúp bạn chọn đúng công cụ:

  • Cấu trúc dữ liệu: CSV chỉ hỗ trợ dữ liệu phẳng (bảng 2 chiều). JSON hỗ trợ đối tượng lồng nhau, mảng trong mảng, cấu trúc cây phức tạp.
  • Kiểu dữ liệu: CSV xem mọi thứ là chuỗi văn bản. JSON phân biệt rõ chuỗi, số, boolean, null và mảng.
  • Kích thước file: CSV thường nhỏ hơn 30-50% so với JSON tương đương vì không có tên khóa lặp lại.
  • Khả năng đọc: CSV dễ đọc trong bảng tính. JSON dễ đọc cho lập trình viên với cú pháp rõ ràng.
  • Tương thích: CSV được mọi bảng tính và cơ sở dữ liệu hỗ trợ. JSON là tiêu chuẩn cho web API và ứng dụng hiện đại.
  • Streaming: CSV có thể đọc từng dòng (streaming). JSON cần đọc toàn bộ file để phân tích cú pháp (trừ JSON Lines).

Xem thêm: Chuyển CSV sang XML, Chuyển JSON sang YAML, Kiểm tra JSON.

Xử lý các trường hợp đặc biệt

Khi chuyển đổi CSV sang JSON trong thực tế, bạn sẽ gặp nhiều trường hợp đặc biệt cần xử lý cẩn thận:

  • Dấu ngoặc kép trong dữ liệu: Trường "Anh ấy nói ""xin chào""" phải trở thành chuỗi JSON "Anh ấy nói \"xin chào\"". Công cụ này tự động xử lý chuyển đổi này.
  • Xuống dòng trong trường: CSV cho phép xuống dòng bên trong trường trích dẫn. Công cụ nhận diện đúng ranh giới trường ngay cả khi có ký tự xuống dòng.
  • Mã hóa ký tự: UTF-8 là tiêu chuẩn hiện đại. Nếu CSV của bạn từ Excel cũ (Windows-1252 hoặc ISO-8859-1), một số ký tự đặc biệt có thể hiển thị sai. Hãy chuyển đổi sang UTF-8 trước.
  • Trường trống: Trường trống trong CSV trở thành chuỗi rỗng "" trong JSON, không phải null. Nếu cần phân biệt, hãy xử lý sau khi chuyển đổi.
  • Header trùng tên: Nếu CSV có 2 cột cùng tên, cột sau sẽ ghi đè giá trị cột trước trong đối tượng JSON. Đảm bảo header duy nhất trước khi chuyển đổi.

Sử dụng CSV sang JSON trong code

Dưới đây là các ví dụ code phổ biến để chuyển đổi CSV sang JSON trong các ngôn ngữ lập trình:

JavaScript / Node.js

const csv = "name,age\nAlice,28\nBob,35";
const lines = csv.split("\n");
const headers = lines[0].split(",");
const result = lines.slice(1).map(line => {
  const values = line.split(",");
  return Object.fromEntries(
    headers.map((h, i) => [h, values[i]])
  );
});
// [{name: "Alice", age: "28"}, ...]

Python

import csv, json, io
csv_data = "name,age\nAlice,28\nBob,35"
reader = csv.DictReader(io.StringIO(csv_data))
result = json.dumps(list(reader), indent=2)
print(result)

Command line (jq + csvtool)

# Sử dụng Miller (mlr)
mlr --icsv --ojson cat data.csv > data.json

# Hoặc csvjson (csvkit)
csvjson data.csv > data.json

Với dữ liệu lớn (hơn 100MB), nên dùng thư viện streaming như PapaParse (JavaScript) hoặc module csv tích hợp sẵn trong Python thay vì đọc toàn bộ file vào bộ nhớ.

Câu hỏi thường gặp

Bạn cũng có thể thích

CSV to XML Converter — Transform Spreadsheet Data to XML Online

Convert CSV to well-formed XML with configurable root and row element names, delimiter support, and proper escaping. Free browser-based tool — no upload needed.

JSON to YAML Converter — Convert Config Files Online Free

Convert JSON to YAML and YAML to JSON instantly. Bidirectional converter with indent control, key sorting, and sample configs. Free, private, browser-based.

JSON Formatter — Beautify, Minify & Validate JSON Online

Format, beautify, and minify JSON data with real-time validation. Configurable indentation (2/4/tab), instant error detection, copy and download. Free online JSON formatter for developers.

JSON Validator & Formatter — Check & Fix JSON Syntax Online

Validate JSON syntax instantly and see the exact error with line and column numbers. Format (pretty-print) or minify valid JSON. Free, private, runs entirely in your browser.

Thêm công cụ Chuyển đổi dữ liệu

CSV to XML Converter — Transform Spreadsheet Data to XML Online

Convert CSV to well-formed XML with configurable root and row element names, delimiter support, and proper escaping. Free browser-based tool — no upload needed.

JSON to XML Converter — Convert JSON Data to XML Online

Convert JSON objects and arrays to well-formed XML instantly. Bidirectional: also convert XML back to JSON. Handles nested objects, arrays, special characters, and custom root elements. Free, private, browser-based.

JSON to YAML Converter — Convert Config Files Online Free

Convert JSON to YAML and YAML to JSON instantly. Bidirectional converter with indent control, key sorting, and sample configs. Free, private, browser-based.

XML Formatter & Validator — Prettify, Minify & Validate XML Online

Format and validate XML online with syntax highlighting, configurable indentation (2/3/4 spaces), and real-time error detection. Switch between prettify and minify modes. Uses the browser's native DOMParser — free, private, no data leaves your device.

JSON Validator & Formatter — Check & Fix JSON Syntax Online

Validate JSON syntax instantly and see the exact error with line and column numbers. Format (pretty-print) or minify valid JSON. Free, private, runs entirely in your browser.

JSON Minifier — Compress JSON & Remove Whitespace Online

Minify JSON online by removing all whitespace and indentation. Shows before/after size comparison with savings percentage. Validates JSON before compressing to guarantee valid output. Includes prettify mode, download, and copy. Free, private, runs entirely in your browser.

JSON Diff and Compare — Find JSON Differences

Compare two JSON objects side-by-side and highlight structural differences. Added lines in green, removed in red. Normalizes key order for accuracy.

Giới thiệu về Chuyển đổi dữ liệu

Công cụ developer tự động hóa các phần lặp đi lặp lại của công việc phần mềm: format JSON, encode/decode Base64, decode JWT để xác minh claim của token, tạo UUID, format XML, diff cấu hình. Đây không phải tác vụ hào nhoáng, nhưng là các điểm nghẽn ngốn 10-15 phút nhiều lần mỗi ngày — cộng lại hàng giờ mỗi tuần. Chạy chúng trên tab trình duyệt sạch sẽ hơn vật lộn với phụ thuộc CLI hay extension IDE có thể gửi dữ liệu riêng tư của bạn cho bên thứ ba.

Vì sao nó quan trọng

Công cụ developer client-side nhanh về cơ bản quan trọng vì chúng được dùng với dữ liệu nhạy cảm. JWT token chứa danh tính người dùng. Payload Base64 có thể encode API key. JSON dump bao gồm bản ghi khách hàng. Nếu một 'công cụ developer' gửi input của bạn lên server để xử lý, bạn vừa rò rỉ production secret. Công cụ dev của ZestLab chạy 100% client-side không có network call nào sau khi load page — những gì bạn paste vẫn ở trong trình duyệt.

Riêng tư và an toàn

Tất cả công cụ developer ở đây chạy trong trình duyệt bằng JavaScript thuần. Không có 'decode server' hay 'format API' — JWT, JSON, payload encode của bạn được parse bởi code chạy trên laptop của bạn. Tự xác minh bằng DevTools trình duyệt → Network tab: bạn sẽ thấy không có request nào khi dùng bất kỳ công cụ nào. Đó là tiêu chuẩn chúng tôi giữ vì công cụ dev xử lý secret.

Thực hành tốt

  • Không bao giờ paste JWT hay API token production vào BẤT KỲ công cụ online nào mà không xác minh chạy client-side (check tab Network)
  • Dùng chế độ ẩn danh trình duyệt để decode một lần các payload nhạy cảm
  • Bookmark công cụ bạn dùng hàng ngày — URL công cụ ZestLab ổn định, không cần tài khoản
  • Khi format JSON có secret để team review, redact credential trước khi share output