Convertir un shapefile en CSV
Gratuit, privé et rapide : tout se passe dans votre navigateur, vos fichiers Shapefile ne sont jamais envoyés.
Shapefile en CSV : pourquoi convertir ?
La table attributaire d'un shapefile se trouve dans son fichier .dbf, qu'Excel et Google Sheets n'ouvrent plus correctement. La conversion en CSV vous donne cette table sous une forme que tout tableur, toute base de données et tout script sait lire, avec une ligne par entité. Les shapefiles de points reçoivent des colonnes X et Y avec les coordonnées, pour que les positions restent utilisables ; les lignes et polygones reçoivent leur géométrie en texte WKT. Vous pouvez garder le système de coordonnées propre au shapefile, par exemple des mètres en Lambert-93 ou dans une zone UTM, ou convertir au passage les coordonnées en longitude et latitude. Chargez le shapefile en .zip ou en fichiers séparés ; plusieurs shapefiles donnent un CSV chacun. Tout se passe dans votre navigateur avec GDAL.
Comment convertir Shapefile en CSV
- Déposez un .zip contenant votre shapefile, ou sélectionnez ensemble les fichiers .shp, .shx, .dbf et .prj.
- Choisissez le style de CSV, et saisissez EPSG:4326 si vous voulez des longitudes et latitudes.
- Cliquez sur « Convertir en CSV » et ouvrez le fichier dans Excel ou dans votre base de données.
Ce qui change lors de la conversion
Les coordonnées sont dans le système du shapefile
Par défaut, X et Y sont écrits dans le système de coordonnées du fichier .prj : un shapefile en RGF93 / Lambert-93 donne donc des X et Y en mètres, comme 652381.41 et 6862047.86. Pour des longitudes et latitudes de type GPS, saisissez EPSG:4326 comme système de coordonnées de sortie. Un CSV ne peut pas enregistrer le système lui-même ; le message affiché après la conversion vous indique dans lequel sont les nombres.
Lignes et polygones en WKT
Une route ou une parcelle ne tient pas dans deux colonnes : les shapefiles de lignes et de polygones reçoivent donc une première colonne appelée WKT avec la géométrie complète en texte, comme POLYGON ((...)). Excel l'affiche comme un long texte et coupe les cellules à 32 767 caractères ; les logiciels SIG et les bases de données peuvent la relire comme géométrie.
Les noms de champs courts restent courts
Les noms de champs d'un shapefile font au plus 10 caractères : l'en-tête du CSV a donc les mêmes noms abrégés, comme DESCRIPTIO ou POP_2020. Renommez-les dans le tableur si la table est destinée à des lecteurs qui ne connaissent pas les données. Les dates du .dbf sont écrites sous la forme 2024-05-01.
Caractères spéciaux
Le texte est lu avec l'encodage indiqué dans le fichier .cpg ; sans lui, l'UTF-8 valide est lu comme de l'UTF-8 et le reste du texte selon le code de l'en-tête du .dbf, ou en Windows-1252. Il est écrit en UTF-8. Choisissez l'un des styles Excel pour qu'Excel affiche correctement les lettres comme é, ü ou ø ; le style à points-virgules convient à Excel dans les pays qui utilisent la virgule décimale.
Plusieurs shapefiles à la fois
Un .zip contenant plus d'un shapefile donne un zip avec un CSV pour chacun, nommé d'après les shapefiles. Les fichiers d'index spatial, de métadonnées et de style à côté du shapefile sont ignorés.
À propos des formats
Shapefile
Le shapefile Esri est le format vectoriel SIG le plus répandu. Un « shapefile » est en réalité un ensemble de fichiers portant le même nom : le .shp contient la géométrie, le .shx un index, le .dbf la table attributaire, le .prj facultatif le système de coordonnées et le .cpg l'encodage du texte.
- Il faut au moins les fichiers .shp, .shx et .dbf. Chargez-les ensemble ou dans un seul .zip.
- Les noms de champs sont limités à 10 caractères et les valeurs texte à 254 caractères.
- Chaque shapefile ne contient qu'un seul type de géométrie : points, lignes ou polygones.
- Sans fichier .prj, le système de coordonnées est inconnu.
CSV
Le CSV (comma-separated values, valeurs séparées par des virgules) est un tableau en texte brut qui s'ouvre dans Excel, Google Sheets et toutes les bases de données. Il n'a pas de type de géométrie : les positions sont stockées soit dans deux colonnes de coordonnées, comme la latitude et la longitude, soit dans une colonne de texte WKT.
- Les points tiennent dans deux colonnes (X et Y, ou longitude et latitude) ; les lignes et polygones nécessitent une colonne WKT.
- Le système de coordonnées n'est pas enregistré dans le fichier, notez-le donc à part.
- Il n'existe pas de norme pour le séparateur : Excel utilise une virgule ou un point-virgule selon les paramètres de langue.
- Chaque valeur est du texte ; c'est le programme qui le lit qui décide si 01500 est un nombre ou un code postal.
Questions fréquentes
Mon shapefile est-il envoyé ?
Non. Les fichiers sont lus et convertis par votre navigateur sur votre propre ordinateur.
Puis-je ouvrir seulement le fichier .dbf dans Excel ?
Les versions actuelles d'Excel n'enregistrent plus les fichiers .dbf, et en ouvrir un directement peut abîmer les caractères spéciaux et les dates. Un CSV évite ces problèmes.
Comment obtenir la table sans les coordonnées ?
Convertissez normalement, puis supprimez dans votre tableur les colonnes X et Y ou la colonne WKT. Les colonnes d'attributs sont les mêmes dans tous les cas.
Puis-je retransformer le CSV en shapefile ?
Un CSV avec des colonnes X et Y peut être chargé dans QGIS comme couche de texte délimité et enregistré en shapefile. Utilisez le shapefile d'origine si vous l'avez encore, car le CSV n'enregistre pas le système de coordonnées.