Văn bản
Chuyển đổi CSV sang JSON và ngược lại
Chuyển dữ liệu bảng giữa CSV và JSON theo cả hai chiều, hỗ trợ nhiều dấu phân cách và ô có dấu nháy.
Chuyển đổi CSV sang JSON và ngược lại là gì?
CSV và JSON là hai cách phổ biến nhất để trao đổi dữ liệu bảng, và việc phải chuyển qua lại giữa chúng xảy ra liên tục: xuất từ Excel ra CSV rồi cần đưa vào ứng dụng dùng JSON, hoặc lấy JSON từ giao diện lập trình rồi cần mở bằng bảng tính.
Điểm khiến việc này hay hỏng là cách xử lý dấu nháy. Một ô CSV có thể chứa chính dấu phân cách nếu nó được bọc trong dấu nháy kép — ví dụ ô "Hà Nội, Việt Nam" là một giá trị duy nhất dù có dấu phẩy bên trong. Tách chuỗi thô bằng dấu phẩy sẽ làm hỏng ngay dòng đầu tiên gặp trường hợp này.
Công cụ đọc CSV theo đúng chuẩn RFC 4180: xử lý ô có dấu nháy, dấu nháy kép lồng nhau và cả xuống dòng nằm trong ô. Chiều ngược lại cũng tự bọc dấu nháy khi cần. Hỗ trợ dấu phân cách phẩy, chấm phẩy, tab và gạch đứng — chấm phẩy hay gặp ở tệp xuất từ Excel bản tiếng Việt và châu Âu.
Cách sử dụng
- Chọn chiều chuyển đổi: CSV sang JSON hoặc ngược lại.
- Chọn dấu phân cách đúng với tệp của bạn. Nếu kết quả bị dồn vào một cột, gần như chắc chắn bạn chọn sai dấu.
- Dán dữ liệu vào ô nhập. Kết quả hiện ngay bên dưới kèm số bản ghi.
- Bấm Đảo chiều để chuyển kết quả sang làm dữ liệu vào cho chiều ngược lại.
Câu hỏi thường gặp
Vì sao tệp Excel của tôi dùng dấu chấm phẩy?
Vì Excel dùng dấu phân cách theo thiết lập vùng của hệ điều hành. Ở những nơi dùng dấu phẩy làm dấu thập phân — gồm Việt Nam và phần lớn châu Âu — Excel chuyển sang dùng chấm phẩy để tránh nhầm lẫn.
Ô chứa dấu phẩy có bị vỡ không?
Không, miễn là ô đó được bọc trong dấu nháy kép theo đúng chuẩn CSV. Công cụ xử lý được cả dấu nháy kép lồng nhau bằng cách viết hai lần liên tiếp, và cả ký tự xuống dòng nằm bên trong ô.
JSON của tôi có khoá khác nhau giữa các bản ghi thì sao?
Công cụ gom tất cả khoá xuất hiện ở mọi bản ghi để làm tên cột, chứ không chỉ lấy từ bản ghi đầu tiên. Bản ghi nào thiếu khoá nào thì ô đó để trống.
Xử lý được tệp lớn cỡ nào?
Vài megabyte thì bình thường. Với tệp hàng chục megabyte, trình duyệt sẽ chậm vì phải giữ cả dữ liệu gốc lẫn kết quả trong bộ nhớ — lúc đó nên dùng công cụ dòng lệnh.