Langsung ke alat
ViewCSV
File tidak diunggah

Konversi CSV ke tabel HTML

orders.csv· DATA CONTOH15 baris · 8 kolom
Hasil
Garis tepi dan angka rata kanan; untuk hasil tabel saja, yang ditambahkan adalah nama class.
<table class="csv-table">
  <thead>
    <tr>
      <th scope="col">order_id</th>
      <th scope="col">customer</th>
      <th scope="col">city</th>
      <th scope="col">product</th>
      <th scope="col">quantity</th>
      <th scope="col">unit_price</th>
      <th scope="col">order_date</th>
      <th scope="col">status</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td dir="auto">001041</td>
      <td dir="auto">Budi Lestari</td>
      <td dir="auto">Jakarta</td>
      <td dir="auto">Desk lamp</td>
      <td class="num" dir="auto">1</td>
      <td class="num" dir="auto">204.83</td>
      <td dir="auto">2026-01-19</td>
      <td dir="auto">shipped</td>
    </tr>
    <tr>
      <td dir="auto">001042</td>
      <td dir="auto">Andi Wijaya</td>
      <td dir="auto">Bandung</td>
      <td dir="auto">Desk lamp</td>
      <td class="num" dir="auto">1</td>
      <td class="num" dir="auto">139.94</td>
      <td dir="auto">2026-02-26</td>
      <td dir="auto">refunded</td>
    </tr>
    <tr>
      <td dir="auto">001043</td>
      <td dir="auto">Siti Saputra</td>
      <td dir="auto">Medan</td>
      <td dir="auto">Chair, ergonomic</td>
      <td class="num" dir="auto">3</td>
      <td class="num" dir="auto">128.52</td>
      <td dir="auto">2026-03-01</td>
      <td dir="auto">pending</td>
    </tr>
    <tr>
      <td dir="auto">001044</td>
      <td dir="auto">Rizky Kurniawan</td>
      <td dir="auto">Medan</td>
      <td dir="auto">Coffee beans 1kg</td>
      <td class="num" dir="auto">4</td>
      <td class="num" dir="auto">229.71</td>
      <td dir="auto">2026-04-27</td>
      <td dir="auto">refunded</td>
    </tr>
    <tr>
      <td dir="auto">001045</td>
      <td dir="auto">Rizky Lestari</td>
      <td dir="auto">Jakarta</td>
      <td dir="auto">Monitor 27&quot;</td>
      <td class="num" dir="auto">8</td>
      <td class="num" dir="auto"></td>
      <td dir="auto">2026-05-09</td>
      <td dir="auto">pending</td>
    </tr>
    <tr>
      <td dir="auto">001046</td>
      <td dir="auto">Fajar Gunawan</td>
      <td dir="auto">Bandung</td>
      <td dir="auto">Monitor 27&quot;</td>
      <td class="num" dir="auto">4</td>
      <td class="num" dir="auto">221.25</td>
      <td dir="auto">2026-06-20</td>
      <td dir="auto">refunded</td>
    </tr>
    <tr>
      <td dir="auto">001047</td>
      <td dir="auto"> Fajar Saputra </td>
      <td dir="auto">Yogyakarta</td>
      <td dir="auto">USB-C cable</td>
      <td class="num" dir="auto">3</td>
      <td class="num" dir="auto">22.40</td>
      <td dir="auto">2026-07-04</td>
      <td dir="auto">refunded</td>
    </tr>
    <tr>
      <td dir="auto">001048</td>
      <td dir="auto">Rizky Wijaya</td>
      <td dir="auto">Bandung</td>
      <td dir="auto">Monitor 27&quot;</td>
      <td class="num" dir="auto">2</td>
      <td class="num" dir="auto">157.07</td>
      <td dir="auto">2026-08-11</td>
      <td dir="auto">refunded</td>
    </tr>
    <tr>
      <td dir="auto">001049</td>
      <td dir="auto">Andi Lestari</td>
      <td dir="auto">Yogyakarta</td>
      <td dir="auto">Coffee beans 1kg</td>
      <td class="num" dir="auto">2</td>
      <td class="num" dir="auto">219.18</td>
      <td dir="auto">2026-09-10</td>
      <td dir="auto">shipped</td>
    </tr>
    <tr>
      <td dir="auto">001050</td>
      <td dir="auto">Nur Halim</td>
      <td dir="auto">Medan</td>
      <td dir="auto">USB-C cable</td>
      <td class="num" dir="auto">1</td>
      <td class="num" dir="auto">210.97</td>
      <td dir="auto">2026-01-15</td>
      <td dir="auto">refunded</td>
    </tr>
    <tr>
      <td dir="auto">001051</td>
      <td dir="auto">Putri Halim</td>
      <td dir="auto">Medan</td>
      <td dir="auto">USB-C cable</td>
      <td class="num" dir="auto">8</td>
      <td class="num" dir="auto">136.07</td>
      <td dir="auto">2026-02-25</td>
      <td dir="auto">shipped</td>
    </tr>
    <tr>
      <td dir="auto">001052</td>
      <td dir="auto">Rizky Hidayat</td>
      <td dir="auto">Denpasar</td>
      <td dir="auto">Desk lamp</td>
      <td class="num" dir="auto">3</td>
      <td class="num" dir="auto">9.42</td>
      <td dir="auto">2026-03-05</td>
      <td dir="auto">refunded</td>
    </tr>
    <tr>
      <td dir="auto">001053</td>
      <td dir="auto">Budi Kurniawan</td>
      <td dir="auto">Bandung</td>
      <td dir="auto">Notebook A5</td>
      <td class="num" dir="auto">5</td>
      <td class="num" dir="auto">174.88</td>
      <td dir="auto">2026-04-25</td>
      <td dir="auto">pending</td>
    </tr>
    <tr>
      <td dir="auto">001054</td>
      <td dir="auto">Putri Kurniawan</td>
      <td dir="auto">Bandung</td>
      <td dir="auto">Desk lamp</td>
      <td class="num" dir="auto">2</td>
      <td class="num" dir="auto">103.84</td>
      <td dir="auto">2026-05-15</td>
      <td dir="auto">paid</td>
    </tr>
    <tr>
      <td dir="auto">001043</td>
      <td dir="auto">Siti Saputra</td>
      <td dir="auto">Medan</td>
      <td dir="auto">Chair, ergonomic</td>
      <td class="num" dir="auto">3</td>
      <td class="num" dir="auto">128.52</td>
      <td dir="auto">2026-03-01</td>
      <td dir="auto">pending</td>
    </tr>
  </tbody>
</table>

15 baris · 1 file

Buka atau tempel file CSV dan dapatkan <table> dengan <thead> berisi judul <th scope="col"> serta satu <tr> per baris, atau halaman HTML lengkap yang bisa langsung dibuka. Setiap nilai di-escape untuk HTML, jadi <script> atau & di data Anda tampil sebagai teks dan tidak pernah menjadi markup. File dikonversi di browser Anda dan tidak pernah diunggah.

Cara mengonversi CSV ke HTML

  1. Pilih Buka file, seret file .csv, .tsv, atau .txt ke alat ini, atau pilih Tempel. Sesuaikan pemisah atau pengodean di Pengaturan impor jika kolomnya tampak salah.
  2. Di bagian Hasil, pilih Tabel saja untuk menempelkan markup ke halaman atau CMS yang sudah ada, atau Halaman HTML lengkap untuk file mandiri.
  3. Tambahkan Keterangan tabel (opsional), tentukan gaya dan baris baru, lalu pilih Salin atau Unduh HTML.

Untuk README atau wiki, tabel Markdown biasanya lebih mudah diedit; untuk file yang siap dicetak, gunakan CSV ke PDF.

Opsi tabel HTML

Tabel sajaPilihan bawaan. Hanya elemen <table>, siap ditempel ke halaman, templat email, atau blok HTML di CMS.
Halaman HTML lengkapMenambahkan <!doctype html>, <html lang="en"> (tag bahasanya mengikuti bahasa situs), <meta charset="utf-8">, dan <title> (keterangan tabel, atau Table jika tidak ada), sehingga file terbuka dengan benar di browser mana pun.
Keterangan tabel (opsional)Menulis <caption> sebagai anak pertama tabel: nama aksesibel yang dibacakan pembaca layar untuk tabel tersebut.
Tambahkan gaya sederhanaAktif secara bawaan. Di halaman lengkap, opsi ini menyisipkan stylesheet kecil: garis tepi, baris judul berlatar, dan angka rata kanan. Dengan Tabel saja, yang ditambahkan adalah class="csv-table" pada tabel dan class="num" pada sel angka, sehingga tampilannya ditentukan CSS Anda sendiri.
Tampilkan baris baru di dalam selAktif secara bawaan. Baris baru di dalam nilai menjadi <br>. Jika nonaktif, baris baru tetap ada di kode sumber, dan browser menampilkannya sebagai spasi.

Escape, arah teks, dan angka

  • &, <, >, ", dan ' ditulis sebagai &amp;, &lt;, &gt;, &quot;, dan &#39; di setiap sel, judul kolom, dan keterangan tabel. Tag di data Anda tampil sebagai teks, yang juga berarti HTML yang sudah ada di CSV tidak dirender.
  • Setiap sel memakai dir="auto", sehingga nilai berbahasa Arab atau Ibrani tampil dari kanan ke kiri meskipun berada di halaman kiri-ke-kanan.
  • Sebuah kolom dianggap numerik hanya jika setiap nilai yang tidak kosong berupa angka biasa; kolom ID seperti 0042 dibiarkan sebagai teks dan tidak dibuat rata kanan. Nilainya sendiri tidak pernah diubah formatnya.
  • Koma, tanda kutip, dan baris baru bertanda kutip dibaca sesuai RFC 4180. Judul kolom yang kosong menjadi Column 3 dan yang berulang menjadi name (2).
  • Hasilnya UTF-8. Halaman lengkap menyatakannya dengan <meta charset="utf-8">; jika Anda menempelkan Tabel saja ke halaman lain, halaman itu juga harus UTF-8.

Jika tabel HTML tampil tidak sesuai

  • Huruf beraksen tampil seperti é di file sumber. CSV-nya bukan UTF-8. Pilih pengodeannya (sering Windows-1252 untuk ekspor Excel versi lama) di Pengaturan impor lalu buka ulang.
  • Tag dari data saya tampil sebagai teks. HTML di sel Anda sengaja di-escape agar tidak bisa berjalan sebagai markup. Edit hasilnya jika Anda memercayai isinya dan ingin isinya dirender.
  • Tabel yang ditempel tidak punya garis tepi. Tabel saja hanya menambahkan nama class (jika gaya diaktifkan), bukan CSS. Beri gaya pada .csv-table dan td.num di stylesheet situs Anda, atau pilih Halaman HTML lengkap untuk mendapatkan gaya bawaan.
  • Satu kolom menampung semua nilai. Pemisahnya salah ditebak; atur di Pengaturan impor.

Batas dan privasi

File hingga 25 MB, 100.000 baris, atau 2 juta sel dibuka dengan pratinjau langsung 200 baris pertama. File yang lebih besar dikonversi dalam mode streaming: file dibaca dua kali per bagian (sekali untuk mengukur kolom dan menentukan mana yang numerik, sekali untuk menulis), sebuah pemberitahuan menyebutkan bahwa unduhan mencakup seluruh file, dan Salin tidak tersedia. Satu file hasil dibatasi hingga 4 GB.

Konversi berjalan di worker latar belakang pada tab ini, jadi halaman tetap responsif dan Batal bisa menghentikannya. File CSV tidak pernah dikirim ke server.

Contoh: daftar pesanan dengan karakter khusus HTML

Daftar pesanan dengan ampersand, apostrof, tanda kutip, dan HTML di dalam komentar dua baris, dikonversi dengan pengaturan bawaan (Tabel saja, dengan gaya, baris baru ditampilkan). Semua nilai qty berupa angka, jadi selnya mendapat class="num".

CSV
id,product,qty,comment
0042,Fish & Chips,2,"<b>Extra</b> vinegar
no salt"
0043,"O'Brien's ""Stout""",12,
HTML
<table class="csv-table">
  <thead>
    <tr>
      <th scope="col">id</th>
      <th scope="col">product</th>
      <th scope="col">qty</th>
      <th scope="col">comment</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td dir="auto">0042</td>
      <td dir="auto">Fish &amp; Chips</td>
      <td class="num" dir="auto">2</td>
      <td dir="auto">&lt;b&gt;Extra&lt;/b&gt; vinegar<br>no salt</td>
    </tr>
    <tr>
      <td dir="auto">0043</td>
      <td dir="auto">O&#39;Brien&#39;s &quot;Stout&quot;</td>
      <td class="num" dir="auto">12</td>
      <td dir="auto"></td>
    </tr>
  </tbody>
</table>

Tanya jawab

Apakah hasilnya aman ditempel ke situs saya?

Data Anda tidak bisa menyisipkan markup: setiap nilai, judul kolom, dan keterangan tabel di-escape untuk HTML, dan tidak ada nilai yang pernah ditaruh di dalam atribut. Satu-satunya tag di hasil adalah elemen tabel yang ditulis oleh konverter itu sendiri.

Dari mana atribut lang="en" di halaman lengkap berasal?

Halaman lengkap mengambil tag bahasanya dari bahasa situs yang sedang Anda pakai. Ubah atribut lang setelah mengunduh jika data Anda berbahasa lain.

Bisakah tabel HTML-nya diurutkan atau difilter?

Hasilnya tabel statis tanpa skrip. Urutkan atau filter datanya lebih dulu dengan Urutkan baris CSV atau Filter baris CSV, lalu konversikan.

Standar dan referensi