Langsung ke alat
ViewCSV
File tidak diunggah

Kompres CSV

Seret file CSV, .gz, atau .zip ke sini
Tindakan
Byte file dikompres apa adanya, jadi hasil pemulihan sama persis dengan file aslinya, termasuk pengodean, byte-order mark, dan akhir baris.
Buka file untuk dikompres atau dipulihkan.

Buka file CSV lalu pilih gzip atau ZIP, dan file terkompresi langsung terunduh begitu siap: orders.csv menjadi orders.csv.gz atau orders.zip. Untuk arah sebaliknya, buka file .gz atau .zip dan pulihkan file-file di dalamnya. Byte-nya tidak diurai atau diubah, jadi pengodean, pemisah, tanda kutip, akhir baris, dan BOM (jika ada) kembali persis seperti semula. Kompresi berjalan di browser Anda; file tidak pernah diunggah.

Cara mengompres atau memulihkan CSV

  1. Buka atau seret sebuah file. File berakhiran .gz atau .zip membuat alat ini beralih ke mode pemulihan; file lainnya akan dikompres.
  2. Pilih gzip atau ZIP dan tingkat kompresi dari 1 sampai 9. Nilai bawaan, 6, adalah titik seimbang yang lazim antara ukuran dan waktu.
  3. Mulai prosesnya. Hasilnya terunduh, dan alat ini menampilkan ukuran sebelum dan sesudah beserta rasionya.

Gzip atau ZIP?

Gzip (.csv.gz)Satu file terkompresi, didefinisikan dalam RFC 1952. Alat command line, data warehouse, dan banyak pipeline impor bisa membaca .csv.gz secara langsung. Nama file asli disimpan di dalamnya.
ZIP (.zip)Arsip berisi satu entri dengan nama file aslinya. Bisa dibuka dengan klik dua kali di Windows dan macOS, jadi cocok untuk lampiran email dan pengguna yang tidak memakai command line.
Tingkat kompresi1 paling cepat, dan 9 bekerja paling keras untuk menghasilkan file yang lebih kecil. Pada CSV biasa, selisih antara 6 dan 9 kecil, dan pada file kecil mungkin tidak ada selisih sama sekali.
PulihkanFile .gz mengembalikan satu file di dalamnya. File .zip mengembalikan semua file yang dikandungnya; folder dilewati dan jalur folder dihapus dari nama file. Satu file langsung terunduh; jika ada beberapa, semuanya dicantumkan dengan tombol unduh masing-masing.

Mengompres file yang sama dengan tingkat yang sama selalu menghasilkan byte yang identik, karena timestamp yang ditulis di header gzip dan entri ZIP bernilai tetap, bukan waktu saat itu. Dengan begitu, hasilnya aman untuk diperiksa checksum-nya atau disimpan di version control.

Yang dipertahankan persis

  • File diperlakukan sebagai byte, bukan tabel, jadi tidak ada yang dikodekan ulang: ekspor Windows-1252 atau Shift_JIS, pemisah titik koma, akhir baris CRLF, dan BOM UTF-8 semuanya pulih tanpa perubahan. Angka nol di depan dan ID panjang tidak tersentuh karena tidak ada nilai yang pernah dibaca.
  • Baris baru bertanda kutip dan tanda kutip yang nyasar tidak berpengaruh pada kompresi; bahkan CSV yang formatnya rusak pun dikompres dan dipulihkan apa adanya. Untuk memeriksa isi file itu sendiri, gunakan Validasi CSV.
  • Gzip menyimpan nama file dalam Latin-1, sesuai ketentuan RFC 1952, jadi nama file dalam aksara lain, seperti Tionghoa atau Sirilik, mungkin tidak kembali utuh. Gunakan ZIP untuk nama seperti itu, atau ganti nama file setelah dipulihkan.
  • Jika sebuah ZIP berisi dua file bernama sama di folder yang berbeda, keduanya dipulihkan dengan nama tersebut. Ganti namanya saat Anda mengunduhnya.

Mengatasi masalah

  • Ini bukan file gzip atau ZIP. Byte awal file bukan tanda tangan gzip atau ZIP; mungkin itu CSV biasa yang diberi nama .gz, atau jenis arsip lain seperti 7z atau RAR. Beralihlah ke gzip atau ZIP untuk mengompresnya.
  • Data gzip rusak atau tidak lengkap. Checksum atau panjang yang tersimpan di akhir file tidak cocok, yang biasanya berarti unduhannya terputus. Ambil ulang filenya.
  • Data ZIP rusak atau memakai metode yang tidak didukung. Hanya entri stored dan Deflate yang bisa dipulihkan; metode seperti Deflate64, BZIP2, atau LZMA tidak didukung. File ZIP yang dilindungi kata sandi juga tidak didukung: ekstrak dengan aplikasi arsip yang meminta kata sandinya.
  • File terkompresi hampir tidak lebih kecil. CSV dengan banyak nilai berbeda, seperti ID acak atau hash, terkompresi lebih sedikit daripada data yang berulang, dan file yang sangat kecil hampir tidak berkurang karena format ini menambahkan header berukuran tetap. Mengonversi ke Parquet bisa memperkecil data bertipe dan berbentuk kolom lebih jauh lagi.

File besar dan privasi

Di sini tidak ada batas 25 MB, karena file tidak pernah dimuat sebagai tabel: file dibaca per bagian 4 MB lalu dikompres atau dipulihkan secara streaming. Pemulihan berhenti dengan pesan kesalahan begitu total data yang dipulihkan akan melewati 4 GB, untuk melindungi tab dari “zip bomb” yang mengembang menjadi sangat besar.

Proses berjalan di worker latar belakang pada tab ini, dan Batal menghentikannya. Tidak ada yang diunggah. Untuk memperkecil file besar dengan memotongnya menjadi beberapa bagian, gunakan Pecah CSV, yang juga bisa mengunduh semua bagian sebagai satu ZIP.

Contoh

Ekspor pesanan 12 baris dengan titik koma, koma desimal, dan SKU dengan nol di depan (beberapa baris pertama ditampilkan), total 374 byte. Gzip menghasilkan 185 byte yang sama pada tingkat 1, 6, dan 9 karena filenya sangat kecil; ZIP menambahkan header arsip yang lebih besar. Memulihkan salah satu file mengembalikan seluruh 374 byte tanpa perubahan.

CSV
order_id;region;sku;qty;amount
SO-1001;North;00123;1;19,90
SO-1002;South;00124;2;38,90
SO-1003;East;00125;3;57,90
SO-1004;West;00123;4;76,90
…
Hasil
orders-march.csv.gz   185 bytes (49.5 %), restores to orders-march.csv
orders-march.zip      296 bytes (79.1 %), one entry: orders-march.csv
Restored orders-march.csv   374 bytes, identical to the original

Tanya jawab

Bisakah beberapa file CSV dikompres menjadi satu ZIP?

Tidak di halaman ini: alat ini mengompres satu file dalam satu waktu. Pecah CSV mengunduh semua bagiannya sebagai satu ZIP, dan memulihkan ZIP di sini mengembalikan semua file di dalamnya.

Apakah file .csv.gz masih termasuk CSV?

Ya, itu CSV yang dikompres dengan gzip. Alat yang mendukung gzip, seperti gunzip, perintah impor di kebanyakan database, dan pustaka data, bisa membacanya langsung; alat lain perlu memulihkannya dulu ke .csv, dan itu bisa dilakukan di halaman ini.

Apakah kompresi mengubah data saya?

Tidak. Kompresi gzip dan ZIP bersifat lossless dan alat ini tidak pernah mengurai CSV-nya, jadi file yang dipulihkan berisi urutan byte yang sama dengan file aslinya.

Standar dan referensi