A small Windows app to batch-convert files between several format families: tabular data (CSV/Excel/Parquet), GIS/vector data (Shapefile, File Geodatabase, ArcGIS Pro .mpkx packages → GeoJSON/KML/GeoPackage), mesh/simulation data (.vtu → CSV/VTK/XDMF/PLY), and raster/DEM data (GeoTIFF → Cloud-Optimized GeoTIFF or per-pixel CSV). Select one or several files, pick an output format, convert — runs off the UI thread so large batches don't freeze the window.
Built for the BVECSM (Bassin Versant Expérimental Campus Sainte-Marthe) research station, but usable for any files in these formats. Author: Maxime Tarka. See LICENSE (MIT).
Download the latest ready-to-use archive from the Releases page, unzip it anywhere, then double-click run_app.bat. No Python installation, no PowerShell script to run.
- Windows, no Python installed: run
powershell -ExecutionPolicy Bypass -File setup\setup_runtime.ps1to download an embeddable Python and install dependencies intoruntime/, then launch withrun_app.bat. - With Python 3.12 already installed: create a virtual environment, install
setup/requirements.txt, then runpython app/main.py.
To build a ready-to-share archive, see setup/package_app.ps1 and RELEASING.md.
| Family | Input | Output |
|---|---|---|
| Tabular | CSV, Excel (.xlsx/.xls), Parquet | CSV, Excel, Parquet |
| GIS / vector | Shapefile (.shp), File Geodatabase (.gdb folder), ArcGIS Pro Map Package (.mpkx) | GeoJSON, KML, GeoPackage (.gpkg) |
| Mesh / simulation | VTK unstructured grid (.vtu) | CSV (points + point data), VTK legacy, XDMF, PLY |
| Raster / DEM | GeoTIFF (.tif/.tiff) | Cloud-Optimized GeoTIFF (.tif), CSV (x, y, value per pixel) |
A batch must be a single family at a time (the app rejects mixing e.g. a CSV and a .shp in the same conversion, since they don't share output options) — convert one family, then the next.
- Add files... (multi-select) or Add folder (.gdb)... for a File Geodatabase, since that's a folder, not a single file.
- Pick an output format from the dropdown — the list adapts to the family detected in your selection.
- Optionally choose an output folder; leave empty to write each converted file next to its source.
- Click Convert. Each file converts in its own background thread (bounded by CPU count), so the window stays responsive even for large batches or large files. Per-file results and a final summary appear below.
.mpkxfiles (ArcGIS Pro Map Packages) are 7z archives containing one or more.gdb/.shplayers. The app extracts them internally using a bundled standalone7za.exe(seeapp/bin/LICENSE-7za.txt) — no separate 7-Zip install needed. If a package contains multiple layers, each is written as a separate output file (<name>__<layer>.<ext>)..gdbis a folder, not a file — use the Add folder (.gdb)... button, not Add files....
- Cloud-Optimized GeoTIFF (COG) is a regular GeoTIFF, reorganized internally (tiled, with resolution overviews) so a web map can request only the pixels/zoom level it needs instead of downloading the whole file — same numeric values, no precision loss.
- The per-pixel CSV output (one row per pixel: x, y, value) can get very large for high-resolution rasters. If a selected raster exceeds ~10 million pixels, the app warns with an estimated row count before converting.
The theme button in the top bar switches the whole interface. The choice is remembered between sessions.
- Application logs are in
app\logs\app.log. - Unhandled errors (crashes) are written to
app\logs\crash.log.
Petit logiciel Windows pour convertir des fichiers par lots entre plusieurs familles de formats : données tabulaires (CSV/Excel/Parquet), données SIG/vecteur (Shapefile, File Geodatabase, packages ArcGIS Pro .mpkx → GeoJSON/KML/GeoPackage), données de maillage/simulation (.vtu → CSV/VTK/XDMF/PLY), et données raster/DEM (GeoTIFF → Cloud-Optimized GeoTIFF ou CSV par pixel). Sélectionner un ou plusieurs fichiers, choisir un format de sortie, convertir — tourne hors du thread principal pour que les gros lots ne figent pas la fenêtre.
Fait pour la station de recherche BVECSM (Bassin Versant Expérimental Campus Sainte-Marthe), mais utilisable pour n'importe quel fichier dans ces formats. Auteur : Maxime Tarka. Voir LICENSE (MIT).
Télécharger la dernière archive prête à l'emploi depuis la page Releases, la décompresser n'importe où, puis double-cliquer sur run_app.bat. Aucune installation de Python, aucun script PowerShell à exécuter.
- Windows, sans Python installé : exécuter
powershell -ExecutionPolicy Bypass -File setup\setup_runtime.ps1pour télécharger un Python embarqué et installer les dépendances dansruntime/, puis lancer avecrun_app.bat. - Avec Python 3.12 déjà installé : créer un environnement virtuel, installer
setup/requirements.txt, puis lancerpython app/main.py.
Pour créer une archive prête à distribuer, voir setup/package_app.ps1 et RELEASING.md.
| Famille | Entrée | Sortie |
|---|---|---|
| Tabulaire | CSV, Excel (.xlsx/.xls), Parquet | CSV, Excel, Parquet |
| SIG / vecteur | Shapefile (.shp), File Geodatabase (dossier .gdb), package ArcGIS Pro (.mpkx) | GeoJSON, KML, GeoPackage (.gpkg) |
| Maillage / simulation | VTK unstructured grid (.vtu) | CSV (points + données par point), VTK legacy, XDMF, PLY |
| Raster / DEM | GeoTIFF (.tif/.tiff) | Cloud-Optimized GeoTIFF (.tif), CSV (x, y, valeur par pixel) |
Un lot doit être d'une seule famille à la fois (l'app refuse de mélanger par ex. un CSV et un .shp dans la même conversion, puisqu'ils n'ont pas les mêmes options de sortie) — convertir une famille, puis l'autre.
- Add files... (sélection multiple) ou Add folder (.gdb)... pour une File Geodatabase, puisque c'est un dossier, pas un fichier unique.
- Choisir un format de sortie dans le menu déroulant — la liste s'adapte à la famille détectée dans la sélection.
- Choisir optionnellement un dossier de sortie ; laisser vide pour écrire chaque fichier converti à côté de sa source.
- Cliquer sur Convert. Chaque fichier se convertit dans son propre thread en arrière-plan (borné par le nombre de cœurs CPU), donc la fenêtre reste réactive même pour de gros lots ou de gros fichiers. Le résultat par fichier et un résumé final s'affichent en bas.
- Les fichiers
.mpkx(packages ArcGIS Pro) sont des archives 7z contenant une ou plusieurs couches.gdb/.shp. L'application les extrait en interne via un7za.exeautonome fourni (voirapp/bin/LICENSE-7za.txt) — aucune installation séparée de 7-Zip n'est nécessaire. Si un package contient plusieurs couches, chacune est écrite dans un fichier de sortie séparé (<nom>__<couche>.<ext>). .gdbest un dossier, pas un fichier — utiliser le bouton Add folder (.gdb)..., pas Add files....
- Le Cloud-Optimized GeoTIFF (COG) est un GeoTIFF classique, réorganisé en interne (tuilé, avec des pyramides de résolution) pour qu'une carte web puisse demander uniquement les pixels/le niveau de zoom nécessaire au lieu de télécharger tout le fichier — mêmes valeurs numériques, aucune perte de précision.
- La sortie CSV par pixel (une ligne par pixel : x, y, valeur) peut devenir très volumineuse pour des rasters haute résolution. Si un raster sélectionné dépasse ~10 millions de pixels, l'application avertit avec une estimation du nombre de lignes avant de convertir.
Le bouton de thème dans la barre du haut bascule toute l'interface. Le choix est mémorisé entre les sessions.
- Les logs applicatifs sont dans
app\logs\app.log. - Les erreurs non gérées (crash) sont écrites dans
app\logs\crash.log.