¿Cómo controlar las codificaciones en pgsql2shp?


8

Tengo una base de datos y exporto con pgsql2shp varios shapefiles. Pero cuando abro el dbf los caracteres se muestran incorrectamente. Ejemplo: BroeksterwÔld y este debería ser Broeksterwäld.

Esto probablemente tiene que ver con la codificación. La base de datos es UTF-8. Intenté exportar los archivos de forma como LATIN1, pero no puedo entender cómo hacerlo.


ACTUALIZAR

Resolví este problema agregando 'set pgclientencoding = latin1' (sin comillas) al script por lotes.


La respuesta de Stefan es correcta. En un entorno Unix / bash, debe serlo export PGCLIENTENCODING=LATIN1. Mayúsculas es obligatorio, al menos en mi entorno (Mac OS X 10.10.1 y PostgreSQL 9.3).
thomaskonrad

Esto debería haber sido un comentario en contra de la otra respuesta, no una nueva respuesta.
BradHards

Respuestas:


4

Resolví este problema agregando 'set pgclientencoding = latin1' (sin comillas) al script por lotes.


3

Existe la opción -W para pgsql2shp que le permite especificar la codificación. También podría considerar establecer la variable de entorno PGCLIENTENCODING. La mayoría de los conjuntos de datos del CBS holandés o del Kadaster holandés vienen en la codificación CP1252, no en Latin1.


1
¡Gracias! Creo que la opción -W solo funciona desde shp 2 postgres y desafortunadamente no desde postgres 2 shp. Traté de establecer la variable de entorno PGCLIENTENCODING, pero no estoy seguro de si lo hago correctamente. ¿Qué necesito establecer? Eso sería por variables del sistema y luego bajo la variable 'PGCLIENTENCODING' (sin comillas) y bajo el valor 'Latin1' o 'CP1252' (sin comillas). ¿Y cómo escribo el comando pgsql2shp entonces? De esta manera: pgsql2shp.exe -f carpeta -h .. -p .. -u ... -P .. -g geometrie .., o necesito agregar algo. ¡Gracias por tu ayuda!
Stefan

0

¿Qué s / w estás usando para ver el archivo de forma? Si usa QGIS, le permitirá seleccionar la codificación del archivo de forma, y ​​luego podrá guardarlo con la nueva codificación. Mira también aquí


Gracias por la respuesta. Pero me gustaría poner la codificación en un script que tengo. Porque hay 60 exportaciones de archivos shape cada mes. No quiero cambiar manualmente la codificación cada mes para cada archivo. ¿Quizás conoces una forma de ponerlo en un script?
Stefan
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.