Création de CSV avec une géométrie comme WKT dans QGIS (avec choix du délimiteur de champ)

13

Existe-t-il un moyen de choisir le délimiteur de champ lors de l'exportation d'un CSV avec une géométrie au format wkt dans QGIS?

J'ai un fichier de formes avec des trous de beignet et je voudrais l'exporter en CSV. C'est pour un partenaire dont la base de données ne prend pas en charge les données spatiales.

J'ai suivi la méthodologie de Greg Krakow pour ajouter un champ WKT à mon fichier exporté (lors de l'exportation vers csv, ajoutez GEOMETRY=AS_WKTdans le champ "Layer", mais le délimiteur de champ exporté est une virgule: CSV avec champ WKT

Le problème est que chaque paire de coordonnées de mes polygones (et je pense que ce sera la même chose pour les lignes) est également séparée par une virgule, donc je ne peux pas réimporter les données dans QGIS

Avec un fichier de formes ponctuelles, il fonctionne comme un charme.

Est-ce que quelqu'un sait si je peux choisir mon champ délimité lors de l'exportation vers CSV? Choisissez un point-virgule par exemple?

Je recherche sur le Web et la documentation de QGIS mais je n'ai rien trouvé.

fgcartographix
la source
2
Avez-vous déjà consulté la page d'aide: gdal.org/ogr/drv_csv.html . Il décrit comment changer le séparateur.
underdark
Je cherchais QGIS spécifiquement ... je n'ai pas pensé à chercher l'aide de GDAL. Merci!!
fgcartographix

Réponses:

17

J'ai pu exporter vers CSV, en utilisant autre chose qu'une virgule, en séparant les options de création de calque dans la boîte de dialogue Enregistrer sous .. avec des sauts de ligne.

Ni les virgules ni les espaces (même lorsqu'ils étaient entre guillemets) n'ont fonctionné, mais les sauts de ligne ont fait l'affaire. Pour souligner ..

CETTE APPROCHE A FONCTIONNÉ (séparés par des sauts de ligne):

GEOMETRY=AS_WKT
SEPARATOR=SEMICOLON
LINEFORMAT=CRLF

Mais ces approches n'ont PAS fonctionné ...

(options séparées par des espaces):

GEOMETRY=AS_WKT SEPARATOR=SEMICOLON

(options séparées par des virgules):

GEOMETRY=AS_WKT, SEPARATOR=SEMICOLON

(entre guillemets et LCO séparés par des espaces ou des virgules):

"GEOMETRY=AS_WKT", "SEPARATOR=SEMICOLON"

Comme l'a noté @underdark, il y a peut-être d'autres options discutées sur la page du pilote OGR CSV . Plus précisément, le SEPARATORparamètre acceptera soit SEMICOLONou TABen plus de COMMA. En outre, vous voudrez peut-être expérimenter avec le LINEFORMATparamètre, qui prend en charge CRLF(dos / windows) ou LF(unix).

Une image dit mille mots, alors voici une capture d'écran. :)

entrez la description de l'image ici

elrobis
la source
Merci! Ça marche. Je ne sais pas pourquoi cependant, mais quand j'essaie d'importer mon csv dans QGIS, il dit que ce n'est pas une couche valide et qu'elle peut être ajoutée à la carte ...? J'ai essayé avec un simple polygone (linestring et polygone) et cela n'a pas fonctionné non plus :( Donc je suppose que c'est une autre question maintenant ...;)
fgcartographix
...intéressant. Je ne sais pas comment l'expliquer. J'ai essayé d'ajouter celui que j'ai créé à la carte et cela a fonctionné. Ensuite, j'ai essayé d'en ajouter un nouveau, tel qu'il l'a créé (c'est-à-dire via l'option "Ajouter un fichier enregistré à la carte"), et cela a également fonctionné. Quelle version de QGIS? 1,8?
elrobis
1.8.0-Lisboa. Cela fonctionne lorsque j'utilise le bouton "Ajouter un fichier enregistré à la carte", pas lorsque j'utilise le bouton "Ajouter un calque de texte délimité". Le délimiteur point-virgule est coché ainsi que mon champ "WKT" sélectionné pour la géométrie ... Il a cependant fonctionné avec une couche de points plus tôt ...
fgcartographix
1
Ahh .. essayez de passer par le bouton "Ajouter un calque vectoriel .." (comme vous le feriez pour ajouter un fichier de formes), puis parcourez le dossier avec votre .csv. En bas de la boîte de dialogue "Ouvrir la couche vectorielle prise en charge par OGR", définissez "Fichiers de type:" sur Comma Separated Value [OGR]. Ensuite, votre .csvdevrait apparaître, et je parie que cela fonctionnera.
elrobis
Vous pariez bien! Cela a fonctionné avec le "Ajouter un calque de texte délimité" après avoir ouvert mon csv dans Excel et l'ai également enregistré à nouveau ... Étrange, mais si cela fonctionne avec le bouton "Ajouter un calque vectoriel", je suis d'accord avec ça. Comportement étrange cependant ...
fgcartographix
3

Paramètres pour QGIS 3 à l'aide des "Options de couche":

entrez la description de l'image ici

gcamargo
la source