Pengodean karakter apa yang digunakan oleh file-dbf di shapefile? Tampaknya itu ditangani berbeda, berdasarkan program dan pengaturan penyandian lokal mesin. Pengkodean mana yang 'benar' - ditentukan untuk format?
Pengodean karakter apa yang digunakan oleh file-dbf di shapefile? Tampaknya itu ditangani berbeda, berdasarkan program dan pengaturan penyandian lokal mesin. Pengkodean mana yang 'benar' - ditentukan untuk format?
Jawaban:
Standar DBF asli mendefinisikan untuk menggunakan ISO8859-1 , dan hanya ISO8859-1. Jadi, ketika Anda mendapatkan Shapefile yang benar-benar sesuai standar, itu harus ISO8859-1. Tentu saja, pembatasan (sangat lama) ini tidak terlalu bisa digunakan saat ini.
ArcGIS dan Geopublisher, AtlasStyler dan Geoserver mulai memperluas standar untuk mendefinisikan encoding. Untuk ArcGIS , misalnya, buat saja file .cpg (dengan nama samaran yang sama dengan Shapefile lainnya) dan isi dengan nama pengkodean.
mis. buat myshape.cpg dengan texteditor dan masukkan 5 karakter "UTF-8" dan simpan. Jika Anda kemudian membuka Shapefile di ArcGIS, itu membaca konten tekstual dari DBF di charset itu.
Geoserver: Geoserver WFS dapat mengekspor lapisan WFS sebagai Shapefile yang di-zip. Ketika ini selesai, file .cst terkandung dalam zip, melakukan persis sama dengan file .cpg.
Perhatian: Semua ini hanya berlaku untuk data, bukan nama kolom. Anda harus benar-benar hanya menggunakan ASCII dalam nama kolom DBF jika Anda ingin file dapat dibuka dengan program lain.
Petunjuk: Untuk mengubah pengkodean DBF, bukalah dengan OpenOffice Calc .. pilih SaveAs ... klik "Filter options" di kiri bawah dan tekan save. Anda kemudian dapat menentukan pengkodean untuk mengubah isi teks menjadi.
General input/output error
Anda mungkin tidak memiliki Pangkalan yang diinstal . Masalahnya sama apakah Anda menggunakan OpenOffice atau LibreOffice.
.cpg
file yang seharusnya bekerja dengan baik di QGIS, juga, karena dari libgdal 1,9. Kadang-kadang bahkan tampaknya diperlukan: ssrebelious.wordpress.com/2012/03/11/…
Saya cukup yakin bahwa tidak ada pengkodean "benar". File .dbf dapat berupa penyandian apa pun dan Anda akan dapat membuka Shapefile dan membaca atribut dengan benar jika Anda mengetahuinya.
Anda dapat menemukan kertas putih ESRI di sini: http://www.esri.com/library/whitepapers/pdfs/shapefile.pdf
Saya biasanya mengharapkan shapefile berupa UTF-8 atau di lokal negara yang dicakup (sering beberapa pengkodean Latin).
Setiap kali saya melihat pertanyaan tentang penyandian, saya merujuk orang ke artikel ini: http://www.joelonsoftware.com/articles/Unicode.html
Seperti dikatakan:
Tidak masuk akal memiliki string tanpa mengetahui pengkodean apa yang digunakannya. Anda tidak dapat lagi menjulurkan kepala ke pasir dan berpura-pura bahwa teks "biasa" adalah ASCII.
Cara sederhana adalah mengonversi file shp ke file csv. Dan gunakan enca atau iconv untuk mendeteksi pengkodean. Saya mencoba dengan file UTF8 dan gb18030 dan berhasil.