¿Cómo codificar archivos shape desde LATIN1 a UTF-8?


Respuestas:


16

Puedes hacer esto con QGIS. Primero cargue sus archivos de forma save asy luego, seleccione el menú desplegable de codificación utf-8 y luego guarde su archivo.


77
Una advertencia : para que esta solución funcione, qgis debe iniciarse en un entorno LATIN1 / ISO-8859-1 cuando abra el archivo de forma de entrada o no lo leerá correctamente. Si está trabajando en un entorno UTF8, la conversión puede fallar silenciosamente, corrompiendo los datos, dependiendo de los datos en el archivo de forma. Por cierto, la mayoría de los sistemas operativos ahora por defecto a UTF8.
unicoletti

1
Tenga en cuenta que en algunas situaciones puede no funcionar, tuve este tipo de problemas: ( osgeo-org.1560.n6.nabble.com/UTF-8-no-more-td4647456.html )
JaakL

Estoy tratando de guardar un archivo de forma única del sistema en utf-8 pero no funciona. gis.stackexchange.com/questions/219092/…
Muhammad Faizan Khan

27

Suponiendo que está en Linux y tiene acceso a una versión reciente de GDAL , puede intentar lo siguiente (desde esta publicación ):

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

Nota: LATIN1 también debería funcionar en lugar de ISO-8859-1.

En Windows, NO configure SHAPE_ENCODING, ogr2ogrno reconoce ISO-8859-1ni LATIN1.


Solo para aclarar, "reciente" aquí parece significar 1.9.x. Intenté esto con 1.8.1 y no funcionó, intenté nuevamente con 1.9.1 y lo hizo.
Michal Migurski,

No funcionó para mí en Windows.
Pavel Radzivilovsky

Lo hice funcionar en Windows, he actualizado la respuesta.
flup

¿Sabes si puedo buscar la lista de valores válidos para SHAPE_ENCODINGalgún lugar?
JJD

1
@JJD Son los mismos utilizados por iconv: gnu.org/software/libiconv
unicoletti

3

Si mi comprensión de Shapefiles es correcta, la parte que es sensible a la codificación es la base de datos de atributos contenida en el archivo DBF.

Aquí hay una respuesta que me ayudó a resolver este problema usando LibreOffice Calc / Base:

https://gis.stackexchange.com/a/3663/17998

Tiene el beneficio adicional de que puede abrir el archivo DBF usando un conjunto de caracteres distinto y así descubrir cuál es realmente la codificación actual.

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.