Rob
2009/10/16 Arnaud Lesauvage <arnaud.listes@xxxxxxxxx>
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
_______________________________________________
postgis-users mailing list
postgis-users@xxxxxxxxxxxxxxxxxxxxxxx
http://postgis.refractions.net/mailman/listinfo/postgis-users