Chuyển CSV sang JSON
Hoặc dán văn bản phụ đề
Chuyển đổi này thay đổi điều gì
Không mất gì theo hướng này — mọi tính năng của định dạng nguồn đều có chỗ để đi trong định dạng đích.
Danh sách này đến từ ma trận năng lực của hai định dạng này, không phải từ tệp cụ thể bạn đã tải lên. Một tệp cụ thể có thể mất nhiều hơn nếu nó dùng các tính năng mà định dạng cho phép nhưng ma trận không mô hình hóa.
Trang này chuyển đổi CSV sang JSON. Bạn kéo tệp vào hoặc dán văn bản, rồi nhận lại phiên bản JSON. Toàn bộ quá trình chạy ngay trong trình duyệt: không tải tệp lên máy chủ, không cần tài khoản.
CSV và JSON giữ được cùng một lượng thông tin — mốc thời gian, chữ, thứ tự — nên chiều này không mất gì; CSV chỉ đơn giản không có kiểu chữ hay vị trí để mất. Danh sách phía trên lấy từ khả năng của hai định dạng chứ không phải từ tệp của bạn, nên nó giống nhau trước khi bạn mở tệp.
Một tệp hay cả mùa đều được: hàng đợi xử lý lần lượt và trả kết quả về cùng một tệp ZIP.
Ví dụ
Tệp CSV thông thường, chuyển sang JSON
Đầu vào
start,end,text
00:00:01.000,00:00:03.500,The quick brown fox.
00:00:04.000,00:00:06.250,"Jumps over, the lazy dog."
00:00:07.000,00:00:09.000,"Two lines here.
And a second one."
Kết quả
{
"version": 1,
"cues": [
{
"start": 1000,
"end": 3500,
"lines": [
"The quick brown fox."
]
},
{
"start": 4000,
"end": 6250,
"lines": [
"Jumps over, the lazy dog."
]
},
{
"start": 7000,
"end": 9000,
"lines": [
"Two lines here.",
"And a second one."
]
}
]
}
Không mất gì ở chiều này: ba cột của CSV đều có chỗ trong cấu trúc JSON, chỉ là dạng ghi khác.
Cùng phép chuyển trên một tệp lộn xộn
Đầu vào
id,start,end,note,text
1,00:00:01,000,00:00:04,000,cue one,"Hello there, friend."
2,00:00:05.000,00:00:07.000,cue two,Second line.
bad,notatime,00:00:09.000,cue three,Unreadable start.
4,00:00:10.000,00:00:09.000,cue four,End before start.
5,00:00:12.000,00:00:14.000,cue five,Unquoted comma in text, right here.
Kết quả
{
"version": 1,
"cues": [
{
"id": "1",
"start": 1000,
"end": 4000,
"lines": [
"Hello there, friend."
]
},
{
"id": "2",
"start": 5000,
"end": 7000,
"lines": [
"Second line."
]
},
{
"id": "4",
"start": 10000,
"end": 10001,
"lines": [
"End before start."
]
},
{
"id": "5",
"start": 12000,
"end": 14000,
"lines": [
"Unquoted comma in text, right here."
]
}
]
}
Đây là kiểu hỏng tệp thật thường có — kết thúc dòng lẫn lộn, khoảng trắng thừa, ô trống. So sánh với ví dụ gọn phía trên để thấy bộ đọc bỏ qua được gì.
Câu hỏi thường gặp
Kết quả CSV sang JSON trông như thế nào?
Một tài liệu có số `version` và mảng `cues`; mỗi hàng CSV thành một cue với `id`, `start`, `end` và chữ trong `lines`. Đó là cấu trúc trang này tự ghi, không phải một chuẩn ngoài.
Mốc thời gian của CSV có chính xác trong JSON không?
Có, tới mili giây. CSV ghi `00:00:04.126` và JSON ghi `4126`; không có làm tròn hay dịch chuyển, nên timeline giữ nguyên.
Một ô CSV hai dòng ra sao trong JSON?
Hai dòng thành hai phần tử trong mảng `lines` của cùng một cue. Cấu trúc này ghi rõ chúng thuộc một cue, điều mà ô CSV chỉ ngụ ý bằng dấu xuống dòng.
Các hàng CSV có giữ thứ tự trong kết quả JSON không?
Có, và được sắp theo cột start trước khi ghi. Tệp CSV lộn thứ tự sẽ cho JSON đúng thứ tự; chỉ cấu trúc thay đổi, chữ không đổi.
Tôi có chuyển ngược JSON về CSV được không?
Được, nhưng chiều JSON sang CSV bỏ kiểu chữ, vị trí và karaoke, vì bảng chỉ có ba cột start, end, text. Danh sách mất mát của chiều ngược khác phía trên.
Kết quả JSON có giữ encoding của tệp CSV không?
Không. JSON xuất ra là UTF-8, kết thúc dòng kiểu Unix và không có BOM, bất kể CSV đầu vào dùng gì. Tệp UTF-16 được giải mã khi đọc và bảng kết quả sẽ báo.