Convertir GeoJSON en shapefile
Gratuit, privé et rapide : tout se passe dans votre navigateur, votre fichier GeoJSON n'est jamais envoyé.
GeoJSON en Shapefile : pourquoi convertir ?
Le GeoJSON sort des cartes web, des API, de geojson.io et du code JavaScript, mais les flux de travail SIG de bureau, les administrations et beaucoup de clients demandent encore un shapefile Esri. Ce convertisseur écrit un jeu de fichiers shapefile que vous pouvez ajouter directement dans ArcGIS Pro, QGIS ou AutoCAD Map 3D. Il traite les aspects du format qui posent habituellement problème : un seul type de géométrie par fichier, des noms de champs de 10 caractères au plus, le fichier .prj avec le système de coordonnées et l'encodage du texte de la table attributaire. Vous pouvez reprojeter au passage, par exemple en Lambert-93 ou dans une zone UTM, pour que le shapefile soit prêt pour des mesures en mètres. Tout se passe dans votre navigateur avec GDAL.
Comment convertir GeoJSON en Shapefile
- Déposez votre fichier .geojson ou .json dans le cadre, ou cliquez pour le choisir.
- Si vous le souhaitez, saisissez un système de coordonnées de sortie, comme EPSG:2154 pour le Lambert-93.
- Cliquez sur Convertir et téléchargez un .zip contenant les parties du shapefile.
Ce qui change lors de la conversion
Les noms de propriétés longs sont raccourcis
Les noms de propriétés GeoJSON peuvent être aussi longs que vous le voulez, mais la table .dbf d'un shapefile n'accepte que 10 caractères. GDAL coupe les noms plus longs et les garde uniques : description_long devient descriptio, population_2020 devient population et population_2021 devient populati_1. Renommez les propriétés avant la conversion si les noms de colonnes comptent pour les destinataires du fichier.
Les géométries mixtes donnent plusieurs shapefiles
Un même fichier GeoJSON peut contenir des points, des lignes et des polygones ; un shapefile ne le peut pas. Vous obtenez un shapefile par type, comme parks_points.shp, parks_lines.shp et parks_polygons.shp, dans un seul .zip. Les entités multiparties vont avec leur type. Une entité dont la géométrie est une GeometryCollection ou null ne peut être stockée dans aucun shapefile et est écartée ; le message affiché après la conversion indique combien.
Valeurs imbriquées, true/false et dates
La table .dbf connaît le texte, les nombres et les dates, rien d'autre. Les objets et tableaux imbriqués sont écrits sous forme de texte JSON, true et false deviennent 1 et 0, et les dates simples comme 2024-05-01 deviennent de vrais champs de date. Une date avec une heure reste du texte, car un champ de date .dbf ne peut pas contenir l'heure. Le texte de plus de 254 caractères est tronqué.
Le système de coordonnées et le fichier .prj
Le GeoJSON standard est en longitude et latitude WGS84 : par défaut, le shapefile est donc écrit en WGS84 (EPSG:4326) avec un .prj correspondant. Saisissez un système projeté pour obtenir des coordonnées en mètres. Les anciens fichiers GeoJSON qui déclarent un autre système dans un membre « crs » sont lus dans ce système, et le shapefile le conserve, sauf si vous en choisissez un autre.
Caractères spéciaux
Le texte des attributs est écrit en UTF-8, et un fichier .cpg l'indique ; ArcGIS et QGIS le lisent tous les deux. Les noms avec des caractères comme é, ü ou ñ s'affichent correctement. Les anciens logiciels qui ignorent le fichier .cpg peuvent les afficher de travers.
À propos des formats
GeoJSON
Le GeoJSON est un format texte JSON pour les objets géographiques, normalisé en 2016 sous le nom RFC 7946. C'est le format natif des cartes web comme Leaflet, MapLibre et Mapbox, ainsi que de nombreuses API.
- Les coordonnées sont une longitude et une latitude WGS84 (dans cet ordre).
- Points, lignes et polygones peuvent être mélangés dans un même fichier.
- Les propriétés peuvent être n'importe quelle valeur JSON, sans limite de longueur pour les noms de champs.
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.
Questions fréquentes
Quels fichiers se trouvent dans le zip ?
Pour chaque type de géométrie présent dans vos données, vous obtenez des fichiers .shp, .shx, .dbf, .prj et .cpg portant le même nom. Gardez-les ensemble dans un même dossier ; les logiciels SIG ont besoin au moins des trois premiers.
Pourquoi ai-je obtenu trois shapefiles au lieu d'un ?
Votre GeoJSON mélange des points, des lignes et des polygones. Un shapefile ne peut contenir qu'un seul de ces types : le convertisseur écrit donc un shapefile par type au lieu de supprimer des données.
Puis-je garder mes noms de champs longs ?
Pas dans un shapefile : la limite de 10 caractères fait partie du format. Le GeoPackage n'a pas cette limite et s'ouvre dans QGIS et ArcGIS Pro ; demandez donc au destinataire s'il l'accepte.
Les fichiers .json sont-ils acceptés ?
Oui, à condition que le contenu soit du GeoJSON, par exemple une FeatureCollection, une seule Feature ou une simple géométrie.
Mon GeoJSON est-il envoyé ?
Non. Le shapefile est écrit par votre navigateur sur votre propre ordinateur. Aucune donnée ne le quitte.