Perbaiki Pembukaan Berkas CSV dalam Satu Kolom: Delimiters dan Quotes
Periksa pemisah, mengutip dan tipe data sebelum memperbaiki ekspor atau mengimpornya ke lembar kerja.
Simpan yang asli sebelum membuat perubahan
Simpan salinan ekspor yang tak tersentuh dan bekerja dengan berkas yang terpisah. Perhatikan sistem yang memproduksinya dan sistem yang harus membacanya. Pratinjau spreadsheet adalah bukti yang berguna, tapi satu kolom yang terlihat tidak membuktikan ekspor korup. Berkas dapat menggunakan pemisah yang berbeda dari pengaturan impor. Bekerja pada sampel perwakilan kecil pertama sehingga Anda dapat membedakan masalah interpretasi dari kerusakan yang sudah ada dalam data asli.
Temukan pemisah lapangan yang sebenarnya
Inspeksi header dan beberapa catatan untuk koma, semicolons atau tab. Ekstensi berkas saja tidak memberitahu Anda pemisah mana yang digunakan. Dalam Excel, teks yang didokumentasikan impor alur kerja memungkinkan sebuah pilihan pembatas eksplisit dan pratilik dari kolom yang dihasilkan. Coba pemisah yang benar sebelum mengganti karakter. Sebuah penggantian koma global dapat mengubah data di dalam field, sementara sebuah catatan konversi pembatas yang nyata dan menulisnya kembali menggunakan pemisah keluaran yang dipilih.
Perlakukan koma yang dikutip sebagai data
Nilai seperti London, Inggris termasuk dalam satu bidang ketika dikutip dengan benar. CSV juga merepresentasikan kutipan ganda literal dengan gandakan, dan baris perizinan istirahat di dalam ruas yang dikutip. Ini berarti membelah setiap baris pada koma bukanlah perbaikan yang dapat diandalkan. Gunakan alat perbaikan pembatas yang diurai pratinjau dan tinjau kolom. Jika mengutip salah bentuk, menyelidiki sumber baris daripada menghapus semua tanda kutip dan berharap sisa teks akan menyelaraskan.
Periksa baris serta heading
Setelah memilih pemisah, memeriksa catatan berisi tanda baca, sel kosong dan catatan multiline. Header yang memisahkan dengan benar tidak membuktikan sisa berkas mengikuti bentuk yang sama. Bandingkan jumlah kolom yang diharapkan dengan pratinjau parsed dan penyelidikan baris tidak teratur. Periksa beberapa awal, catatan tengah dan akhir terhadap asli yang tak tersentuh. Perbaikan berguna mempertahankan arti nilai-nilai, daripada hanya membuat setiap baris tampaknya memiliki jumlah yang sama sel.
Pertahankan pengidentifikasi sebagai teks
Produksi ID, kode pos dan referensi akun dapat terlihat numerik sementara nol terkemuka mereka yang berarti. Inferensi tipe spreadsheet mungkin mengubahnya. Dokumen Microsoft mengimpor dengan tipe data teks untuk mempertahankan nilai tersebut. Pilih tipe yang sesuai sebelum memuat, terutama untuk identifikasi panjang. Mengubah nilai yang rusak kembali ke format teks tidak dapat memulihkan digit yang telah dihapus. Jaga tanggal dan konvensi desimal di bawah review yang sama yang disengaja bukannya mengandalkan dugaan otomatis aplikasi.
| Symptom | Pemeriksaan pertama | Hindari |
|---|---|---|
| Satu kolom yang terlihat | pemisah sebenarnya dan pembatas impor | Mengganti setiap koma |
| Sebuah catatan menyebar di kolom | Mengkutip pembatas dan tanda kutip ganda | Menghapus semua tanda kutip |
| ID kehilangan nol didepan | Impor identifier sebagai teks | Perubahan tipe setelah digit hilang |
| Baris memiliki widget yang berbeda | Baris sumber dan peringatan parser | Isian tanpa menyelidiki |

Gunakan contoh ini Buka perbaikan CSV dengan masukan ini.
Review rumus-seperti sel sebelum lembar kerja digunakan
CSV tidak membawa sebuah tipe deklarasi lembar kerja untuk setiap nilai. Perangkat lunak spreadsheet dapat menafsirkan prefix sel tertentu sebagai rumus, yang penting ketika isi diekspor berasal dari orang lain. OWASP menjelaskan ini sebagai CSV atau injeksi formula. Gunakan opsi formula aman alat untuk ekspor sreadsheet- berorientasi dan memeriksa apa yang berubah. Prefiks protective mengubah nilai yang diekspor, jadi jangan diam-diam mengganti berkas tersebut ketika sistem lain mengharapkan string asli yang tepat.
Verifikasi alur kerja penerima
Ekspor sampel yang diperbaiki, impor dengan pembatas yang diinginkan dan tipe data, dan bandingkan nilai penting dengan yang asli. Rekam pembatas yang dipilih, kolom pengkodean dan identifier untuk ekspor berikutnya. Jika sumber Anda bersarang JSON, meratakan dengan sengaja dengan JSON- to- CSV alat sebelum menilai tabel hasil. Jika kau mendamaikan catatan antar sistem, bandingkan daftar identifier secara terpisah. Berhasil memecah-belah struktur; tidak memverifikasi bahwa nilai sumber yang mendasari benar.