Comment encoder des fichiers de formes de LATIN1 en UTF-8?

28

Existe-t-il un moyen de coder des fichiers de formes de LATIN1 à UTF-8?

contre-courant
la source

Réponses:

16

Vous pouvez le faire avec QGIS. Commencez par charger vos fichiers de formes, puis codez save as, sélectionnez le menu déroulant utf-8, puis enregistrez votre fichier.

Aragon
la source
7
Avertissement : pour que cette solution fonctionne, les qgis doivent être démarrés dans un environnement LATIN1 / ISO-8859-1 lorsque vous ouvrez le fichier de formes d'entrée sinon il ne le lira pas correctement. Si vous travaillez dans un environnement UTF8, la conversion peut échouer en silence, corrompant les données, selon les données du fichier de formes. BTW, la plupart des systèmes d'exploitation utilisent désormais par défaut UTF8.
unicoletti
1
Notez que dans certaines situations, cela peut ne pas fonctionner, j'ai eu ce type de problèmes: ( osgeo-org.1560.n6.nabble.com/UTF-8-no-more-td4647456.html )
JaakL
J'essaie d'enregistrer un fichier de forme unique du système vers utf-8 mais cela ne fonctionne pas. gis.stackexchange.com/questions/219092/…
Muhammad Faizan Khan
27

En supposant que vous êtes sous Linux et avez accès à une version récente de GDAL, vous pouvez essayer ce qui suit (à partir de ce post ):

 export SHAPE_ENCODING="ISO-8859-1"
 ogr2ogr output.shp input -lco ENCODING=UTF-8

Remarque: LATIN1 devrait également fonctionner au lieu d'ISO-8859-1.

Sous Windows, ne définissez PAS le SHAPE_ENCODING, ogr2ogrne reconnaît pas ISO-8859-1, ni LATIN1.

unicoletti
la source
Juste pour clarifier, «récent» semble ici signifier 1.9.x. J'ai essayé cela avec 1.8.1 et cela n'a pas fonctionné, j'ai réessayé avec 1.9.1 et ça a fonctionné.
Michal Migurski
N'a pas fonctionné pour moi sur Windows.
Pavel Radzivilovsky
Je l'ai fait fonctionner dans Windows, ont mis à jour la réponse.
flup
Savez-vous si je peux rechercher la liste des valeurs valides SHAPE_ENCODINGquelque part?
JJD
1
@JJD Ils sont les mêmes que ceux utilisés par iconv: gnu.org/software/libiconv
unicoletti
3

Si ma compréhension des fichiers de formes est correcte, la partie sensible au codage est la base de données d'attributs contenue dans le fichier DBF.

Voici une réponse qui m'a aidé à résoudre ce problème en utilisant LibreOffice Calc / Base:

/gis//a/3663/17998

Il a l'avantage supplémentaire que vous pouvez ouvrir le fichier DBF en utilisant un jeu de caractères distinct et ainsi découvrir ce qu'est réellement l'encodage actuel.

Marian
la source