Gibt es eine Möglichkeit, den für ein bestimmtes Shapefile verwendeten Zeichensatz zu bestimmen?
Gibt es eine Möglichkeit, den für ein bestimmtes Shapefile verwendeten Zeichensatz zu bestimmen?
Antworten:
Versuch und Irrtum. Versuchen Sie, die DBF-Datei mit MS Excel oder OpenOffice mit einer anderen Einstellung zu öffnen, bis Sie alles richtig gemacht haben.
In diesem Beitrag finden Sie weitere Hinweise: https://stackoverflow.com/questions/319095/how-do-i-determine-the-character-set-of-a-string
Es gibt zwei Möglichkeiten für Programme, den Zeichensatz für ein Shapefile zu bestimmen.
Das fileDienstprogramm kann die Kodierung einer Textdatei erraten. Verwenden Sie diese Option ogr2ogrfür eine Konvertierung, bei der die ursprüngliche Codierung beibehalten wird, wenn keine .cpgDatei vorhanden ist :
ogr2ogr -f CSV file.csv file.dbf
file file.csv
Beispielausgabe:
file.csv: ISO-8859 text
Ich habe es mit zwei der häufigsten Codierungen getestet, UTF-8 und latin1. Funktioniert in Ubuntu sofort und ist sich in Bezug auf OS X nicht sicher. Mir ist kein fileHilfsprogramm unter Windows bekannt.
HINWEIS : Sobald eine entsprechende .cpgDatei vorhanden ist, die die Codierung angibt, ogr2ogrwird diese berücksichtigt und die Ausgabe erfolgt in UTF-8. Wenn die CSV-Ausgabe jedoch richtig aussieht, wissen Sie, dass die Informationen in der .cpgDatei korrekt sind.
Eine weitere Tabelle zum Konvertieren des 29. Bytes von * .dbf in Codepage: http://webhelp.esri.com/arcpad/8.0/referenceguide/index.htm#locales/task_code.htm