J'ai une énorme liste de couches dans un projet qui sont nommées dans une langue étrangère. Je veux traduire et ajouter le titre anglais au nom.
Lorsque je clique avec le bouton droit sur un calque et que je choisis Properties -> General
et modifie le nom du calque, il est visualisé dans l'arborescence des calques mais le fichier d'origine reste le même.
Existe-t-il un moyen de modifier le nom du fichier d'origine à partir de QGIS?
Il y en a tellement que les chercher tous dans mes dossiers prendrait trop de temps.
Réponses:
Pour ce faire, vous devrez i) supprimer la couche de la ToC, ii) renommer les fichiers conformes au Shapefile (c.-à-d. Shp, dbf, shx, prj, etc.) et iii) charger la couche renommée dans QGIS. Mais nous devons automatiser un tel flux de travail!
Si vous regardez les étapes, elles sont similaires à ce que fait le plugin Table Manager. J'ai donc adapté le code de ce plugin pour renommer les Shapefiles, vous pouvez le télécharger ici .
Vous pouvez l'utiliser de cette façon (essayez d'abord avec un petit projet de sauvegarde pour voir comment cela fonctionne):
Copiez ici l'extrait de code suivant:
C'est ça! Je l'ai testé sur GNU / Linux, QGIS 2.6. L'ordre des couches dans la ToC varie après l'exécution du code.
Faites-moi savoir si vous avez un problème.
Si vous avez besoin que l'ordre des calques soit préservé, posez une nouvelle question, peut-être que je peux le regarder :).
la source
Pour les utilisateurs de R, j'ai écrit une fonction R rapide qui renomme par lots le fichier .shp et tous les fichiers associés. Ce sont des os assez nus, et il n'y a pas de vérification d'erreur, etc., donc s'il échoue, vous devrez faire une petite enquête.
la source
Si vous avez un schéma cohérent pour les renommer, vous pouvez le faire dans un script python. Une méthode en python est os.rename (src, dest) . Les détails spécifiques dépendraient de l'algorithme pour renommer les fichiers. C'est pour renommer les fichiers réels, pas seulement les noms de couches dans la table des matières.
Sinon, je ne connais pas d'alternative à les renommer manuellement, car vous devez les traduire. Vous pourriez, en théorie, construire un dictionnaire de traductions en python, mais cela prendrait probablement autant de temps à coder qu'à le faire manuellement. Sachez également que renommer les fichiers eux-mêmes entraînera la rupture des sources de données. Renommer uniquement les noms de couche dans la table des matières devrait être correct, mais je ne suis pas aussi familier avec QGIS qu'Arc.
la source
Je suggère d'utiliser ce programme pour renommer vos fichiers http://www.bulkrenameutility.co.uk/Main_Intro.php . C'est ouvert et facile à utiliser. Après avoir renommé votre fichier, vous devez ouvrir, avec un éditeur de texte, votre fichier de projet qgis (essayez notepad ++) et faire la même recherche et remplacer.
la source