pgsql2shp : Encoding headache
От | Arnaud Lesauvage |
---|---|
Тема | pgsql2shp : Encoding headache |
Дата | |
Msg-id | 4AD83E8B.6000703@codata.eu обсуждение исходный текст |
Ответы |
Re: pgsql2shp : Encoding headache
Re: [postgis-users] pgsql2shp : Encoding headache Re: pgsql2shp : Encoding headache |
Список | pgsql-general |
Hi all! I have an UTF8 encoded shapefile, and an UTF8 encoded postgis-enabled database. I want my shapefile to be encoded in WIN1252, and a particular field to be in uppercase. Since I am on windows, I don't have an iconv executable. Therefore, I am trying to : - dump the shapefile with shp2pgsql to an sql text file - load the resulting sql file into a postgresql table - dump this table into a shapefile with pgsql2shp (in WIN1252) To load the shapefile into postgresql, I had to dump it without specifying a '-W' argument, set my client_encoding to UTF8, then load the sql file into postgresql. If I look at the data with pgAdmin (with client_encoding set to UTF8), it looks good : accentuation is fine, special characters are fine. To dump the data in a WIN1252-encoded shapefile, pgsql2shp has no encoding argument, so I set my client encoding to WIN1252 thtough the environment variable PGCLIENTENCODING. If I just dump the file this way, it seems to be fine. So this command works fine : pgsql2shp -f myouput.shp -u postgres -g mygeom mydatabase "SELECT mytext, mygeom FROM mytemptable" -> [621679 rows] But then, if I dump it through a query to have my field in uppercase, I get an error 'character 0xc29f of encoding UTF8 has no equivalent in WIN1252' (translated by myself, the message is in French) The command is simply : pgsql2shp -f myouput.shp -u postgres -g mygeom mydatabase "SELECT upper(mytext) as mytext, mygeom FROM mytemptable" So I guess there is a problem with my 'upper' conversion, but I have no idea what this 0xc29f character could be. Any help would be greatly appreciated. Thanks a lot ! -- Arnaud Lesauvage
В списке pgsql-general по дате отправления: