Lompat ke konten utama
SubtitleMatrix

Konversi CSV ke JSON

Atau tempel teks subtitle

Apa yang berubah dalam konversi ini

Tidak ada yang hilang ke arah ini — setiap fitur format sumber punya tempat di format tujuan.

Daftar ini berasal dari matriks kemampuan untuk kedua format ini, bukan dari file tertentu yang Anda muat. File tertentu bisa kehilangan lebih banyak jika memakai fitur yang diizinkan format tetapi tidak dimodelkan matriks.

Halaman ini mengubah CSV menjadi JSON. File bisa diseret ke jendela ini atau teksnya ditempel; hasilnya adalah versi JSON. Semua proses berjalan di peramban, tanpa unggahan dan tanpa akun.

Arah CSV ke JSON lossless: semua yang bisa disimpan CSV juga bisa disimpan JSON, sehingga yang berubah hanya pembungkusnya. Timeline, pemisah baris, dan teks tiba tanpa perubahan, bahkan untuk file yang memanfaatkan seluruh kemampuan CSV. File CSV menyimpan satu baris per cue dengan kolom awal, akhir, dan teks; sel yang memuat koma atau baris baru ditulis dalam tanda kutip. JSON menyimpan setiap cue sebagai objek dengan `id`, `start`, dan `end` dalam milidetik.

Anda bisa memasukkan satu file atau satu musim penuh; antrean bekerja berurutan, dan semua hasil turun bersama dalam satu ZIP.

Contoh

File CSV umum, dikonversi ke JSON

Masukan

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."

Keluaran

{
  "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."
      ]
    }
  ]
}

Tidak ada yang hilang di sini: bandingkan kedua sisi baris demi baris.

Konversi yang sama pada input berantakan

Masukan

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.

Keluaran

{
  "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."
      ]
    }
  ]
}

Inilah jenis kerusakan yang ada pada file nyata — byte-order mark, akhir baris Windows, kolom kosong, atau timestamp tanpa tanda kutip. Bandingkan dengan contoh rapi di atas untuk melihat apa yang dimaafkan parser.

Pertanyaan yang sering diajukan

Seperti apa keluarannya ketika CSV menjadi JSON?

Keluaran JSON disusun seperti JSON — array objek cue, masing-masing dengan `id`, `start`, dan `end` miliknya. Cue yang di CSV ditulis `00:00:04.126` menjadi cue yang di JSON ditulis `4126`, dalam urutan yang sama, dan tidak ada teks yang berubah.

Apakah timing CSV akurat di file JSON?

Ya, hingga milidetik — serinci yang bisa dicapai kedua format. CSV menulis satu momen sebagai `00:00:04.126` dan JSON menulis momen yang sama sebagai `4126`; tidak ada yang dibulatkan atau digeser di antara keduanya, dan cue yang tampil selama 2,9 detik tetap begitu.

Bagaimana cue CSV dua baris keluar di JSON?

Dua baris CSV menjadi dua entri dalam array `lines` milik cue. Pasangannya bertahan — keduanya tetap menjadi satu subtitle di keluaran JSON, dan pemutar menampilkannya bersama.

Apakah cue CSV mempertahankan urutannya di keluaran JSON?

Ya, dan cue diurutkan berdasarkan waktu mulai saat proses — paling awal dulu, seperti yang diharapkan setiap format di sini dan cara pemutar membacanya. Jika file CSV Anda mencantumkan cue di luar urutan, keluaran JSON mengembalikannya ke urutan; itu perubahan pada struktur file, bukan isinya, dan disengaja.

Bisakah JSON dikonversi balik ke CSV?

Ya, dan justru arah JSON ke CSV itulah yang lossy: gaya, posisi, dan karaoke tidak punya tempat di CSV. Arah yang sekarang tidak kehilangan apa pun, jadi biaya itu hanya muncul jika Anda kembali.

Apakah keluaran JSON mempertahankan encoding file CSV?

Tidak — keluarannya UTF-8, dengan akhir baris Unix dan tanpa byte-order mark, apa pun yang dipakai file CSV. File yang datang dalam UTF-16 atau encoding satu-byte Windows didekode saat masuk (panel hasil memberi tahu bila itu terjadi); yang keluar selalu JSON UTF-8 yang sama.

Alat terkait