Excel menghancurkan karakter khusus ketika disimpan sebagai CSV

21

Saya sedang mengerjakan proyek yang menggunakan file CSV yang disediakan oleh klien untuk mengisi database. Klien harus membuat spreadsheet, lalu menyimpannya sebagai CSV untuk diunggah, yang kemudian diuraikan ke dalam basis data.

Masalahnya adalah, setiap kali klien menyimpan excel spreadsheet sebagai file .csv MS-DOS, banyak karakter khusus dikonversi menjadi tanda tanya "?" (simbol seperti '"/). Namun, jika kita kemudian membuka file CSV dan secara manual mengganti masing-masing? dengan karakter yang tepat itu berfungsi dengan baik.

Masalahnya adalah file datanya BESAR, dan kami tidak bisa melakukan ini secara wajar, jadi saya berharap ada cara untuk menyimpannya. Kami telah mencoba mengekspor sebagai Unicode dan ASCII tetapi tidak berhasil. Kami juga telah mencoba mengunggah ke google docs, dan menyimpannya kembali, namun, itu juga menghancurkan karakter tersebut.


sumber
2
Jika Anda menggunakan excel 2007, dalam dialog File save as ada hanya di sebelah kiri tombol save, drop down Tools. Jika Anda memilih opsi web dan pada tab Encoding, Anda dapat memilih encoding tertentu. Coba jika itu bisa membantu
Apa contoh teks itu?
enderland
1
Masalahnya tidak dapat direproduksi. Pastikan bahwa data sebenarnya yang Anda gambarkan dan bukan beberapa karakter yang tidak dapat direpresentasikan dalam pengkodean MS-DOS.
Jukka K. Korpela

Jawaban:

11

Pastikan Anda memilih untuk menyimpan sebagai CSV (Comma Delimited)dan bukan CSV (MS-DOS), karena DOS tidak mendukung karakter UTF-8.

Ƭᴇcʜιᴇ007
sumber
6

Saya telah menemukan bahwa masalah karakter yang hilang hanya terjadi (dalam kasus saya) ketika menyimpan dari format xlsx ke format csv. Saya mencoba menyimpan file xlsx ke xls terlebih dahulu, kemudian ke csv. Ini benar-benar berhasil.

Eric
sumber
Ini tidak berhasil untuk saya. Saya masih mendapatkan? dalam file csv
thanos.a
4

Solusi yang mungkin adalah menyimpannya sebagai Unicode Text(2007 memilikinya, tidak yakin tentang edisi sebelumnya), yang menyimpannya sebagai file teks yang dipisahkan dengan tab.

File ini menyimpan karakter unicode saya (dalam kasus saya saya bekerja dengan karakter asia ) sambil menghasilkan semacam file teks terbatas yang kemudian dapat Anda jalankan melalui alat eksternal untuk mengkonversi ke csv jika perlu.

Input saya tidak memiliki tab yang tertanam di dalam setiap sel, dan saya tidak yakin bagaimana itu akan ditangani.

MxLDevs
sumber
3

Inilah yang bekerja untuk saya:

  1. Lakukan koreksi data dalam Excel atau CSV
  2. Simpan file Sebagai Teks Unicode
  3. Buka NOTEPAD
  4. Buka file Unicode yang baru saja Anda simpan menggunakan NOTEPAD
  5. Gunakan kursor Anda untuk menyorot area kosong yang menampung satu tab 5a. Gunakan ruang antara Id Akuisisi dan Jenis Permintaan karena ini menampung SATU TAB!
  6. Tekan Cnrl-C untuk menyalin karakter tab
  7. Ketik Cnlr-H untuk membuka kotak Ganti fungsi
  8. Klik di kotak teks Temukan Apa dan ketik Cnlr-V untuk menempelkan Tab
  9. Klik di kotak Ganti Dengan Teks dan ketik koma
  10. Klik Ganti untuk mengujinya satu kali. Konfirmasikan tab pada file diganti dengan koma
  11. Klik Ganti Semua
  12. Klik Batal
  13. Simpan file dan Keluar
  14. Di Windows Explorer, ubah ekstensi file menjadi .csv
Pat HIll
sumber
1
Ini bekerja untuk saya, menggunakan Notepad ++.
ChrisB
Ya saya harus mengekspor sebagai Unicode dan menemukan dan mengganti tab ke koma juga.
nilloc
2

Saya sudah memiliki masalah ini untuk sementara waktu sekarang, dan akhirnya mendedikasikan waktu untuk mencari tahu! Saya dapat (tampaknya) memperbaiki masalah ini dengan menyimpan sebagai "Windows Comma Separated (.csv)". Saya mencobanya dari .xlsx dan .xls, keduanya dikonversi menjadi .csv. Semoga ini bisa membantu - beri tahu saya jika ada masalah yang muncul dengan metode ini. Saya akan melaporkan kembali jika saya melihat sesuatu selama beberapa minggu ke depan.

Courtney Lowe
sumber
1
Selamat datang di Pengguna Super. Senang melihat Anda langsung menjawab pertanyaan.
CharlieRB
1

Larutan:

  1. Buka file CSV Anda di Notepad (Anda akan melihat tertulis ANSI), lalu simpan kembali sebagai UTF-8 di Notepad.

  2. Maka impor harus bekerja. Namun, jika Anda membukanya lagi di Excel dan hanya Menyimpannya tidak akan berfungsi karena Excel tidak bisa secara alami menyandikan di UTF-8.

  3. Pilihan lainnya adalah bekerja dengan file CSV Anda di www.LibreOffice.org (gratis), yang dapat dikodekan dengan benar di UTF-8 (Saya belum pernah mencoba ini sendiri).

Saya mengalami masalah serupa dengan mengimpor csv produk dengan fraksi ke WooCommerce, yang ditolak karena "?" karakter kesalahan. Ini karena file CSV tidak dikodekan dalam UTF-8. NAMUN, bahkan setelah menyimpan file CSV di Excel dengan pengkodean UTF-8 masih tidak berfungsi.

Setelah menggaruk banyak forum, tampaknya meskipun Excel memberikan opsi untuk menyandikan sebagai UTF-8 - ketika MENYIMPAN SEBAGAI CSV, Excel secara otomatis mengubahnya kembali ke ANSI, walaupun Anda memilih UTF-8.

Hen_za
sumber
1
  1. Unduh dan pasang Unicode CSV Addin untuk excel dari https://github.com/jaimonmathew/Unicode-CSV-Addin
  2. Simpan csv dari menu "Unicode CSV" baru seperti yang ditunjukkan pada gambar di bawah ini.

masukkan deskripsi gambar di sini

thanos.a
sumber
1
Apakah Anda memposting tautan ke add-in ini?
Xavier Poinas
Saya telah memperbarui jawaban untuk memasukkan halaman github. Di sana Anda dapat menemukan halaman unduhan
thanos.a
0

Bahkan saya menghadapi masalah dengan karakter khusus saat mengunduh istilah Jepang dalam format .csv. Namun ketika saya menyimpan file .csv dalam format teks (Tab dibatasi) karakter Jepang di mana populasinya sempurna. Kemudian saya hanya menyalin data dari file teks dan menempelkannya di spreadsheet. Bekerja dengan baik !!!

Terima kasih, Vaishakh

Vaishakh
sumber
Ini tidak memberikan jawaban untuk pertanyaan itu. Untuk mengkritik atau meminta klarifikasi dari penulis, tinggalkan komentar di bawah posting mereka - Anda selalu dapat mengomentari posting Anda sendiri, dan begitu Anda memiliki reputasi yang cukup, Anda akan dapat mengomentari setiap posting .
Ramhound
0

Menemukan solusi terbaik yang pernah ada: http://woshka.com/blog/microsoft/microsoft-excel/solve-the-problem-saving-excel-csv-format-with-utf-8-unicode-encoding.html

Dari tautan:

1-Klik pada menu mulai

2-Pilih panel kontrol

3-Temukan opsi Regional dan Bahasa pada mode klasik atau ketikkan namanya pada bilah pencarian di kanan atas jendela panel kontrol

4-Klik pada tab lanjutan dan klik lokal

5-Klik pada Persia atau Arab atau program pengkodean UTF-08 yang Anda inginkan yang ingin Anda simpan dengan Excel ke CSV

James Ricardoson
sumber
woshka.com bukan lagi URL yang valid, ini adalah domain terparkir saat ini.
Craig London
0

untuk ™ saya menemukan solusinya. Dalam file .xlsx, ganti semua "™" dengan "& tr-ade;". hapus - dari ganti dengan. Simpan file sebagai .csv dan semuanya selesai. Semoga ini berhasil untuk Anda.

mathieu
sumber
0

Di komputer Mac, inilah yang bekerja untuk saya.

Pada excel pilih save as dan kemudian dari drop-down pilih windows comma separated (CSV).

Itu hanya bekerja !!!

Manuel Lema
sumber
0

Simpan sebagai unicode Ubah nama file unicode sebagai .csv ( https://www.youtube.com/watch?v=1VP8__shxTg )

Webmax
sumber
Selamat Datang di Pengguna Super! Sementara ini secara teoritis dapat menjawab pertanyaan, akan lebih baik untuk memasukkan bagian-bagian penting dari jawaban di sini, dan menyediakan tautan untuk referensi.
bertieb