Dans un cours d'introduction aux SIG, il a été insisté pour que tous les espaces dans les noms de fichiers et de dossiers soient remplacés par des traits de soulignement.
Pourquoi est-ce enseigné?
Y a-t-il un avantage évident à le faire?
Dans un cours d'introduction aux SIG, il a été insisté pour que tous les espaces dans les noms de fichiers et de dossiers soient remplacés par des traits de soulignement.
Pourquoi est-ce enseigné?
Y a-t-il un avantage évident à le faire?
-
qui causent également des problèmes parce que parfois ils vont bien et parfois ils ne le sont pas. Vous voyez une méthode d'arggisscripting pour nettoyer un nom de fichier?Réponses:
L'une des raisons est que les espaces ont une signification particulière dans plusieurs langages de programmation / script.
Prendre l'habitude de nommer des fichiers et des dossiers avec des traits de soulignement est une bonne pratique car les "" (espaces) ne seront pas traités comme une nouvelle ligne par certaines langues.
Exemple - Un dossier appelé "GIS Data" est un mauvais nom de dossier. En effet, si j'essaie d'y accéder avec un script ou un langage de programmation, je dois traiter les espaces avec un soin particulier.
Si je ne lui dis pas que les espaces sont en effet des espaces et non des sauts de ligne, alors il essaiera d'accéder à "SIG" et "Données" en tant que dossiers séparés, mais ils ne le sont pas.
Dans Unix bash à partir de la ligne de commande, je peux utiliser la commande ls pour répertorier les fichiers et dossiers dans un répertoire donné.
Résultat:
Erreur!
Je dois maintenant utiliser des barres obliques inverses '\' ou des guillemets '' pour éviter que les espaces soient traités comme des sauts de ligne!
Les deux commandes ci-dessus traitent désormais les espaces comme des espaces.
Plusieurs outils de géotraitement ArcGIS n'aiment pas les espaces dans les noms de fichiers ou de dossiers dans N'IMPORTE QUELLE partie du chemin d'accès à la source de données. Ils échoueront généralement avec une sorte d'erreur générique 99999.
la source
Certains outils de géotraitement échoueront s'il y a des espaces dans les noms de fichiers. Il est donc préférable de les éviter tous ensemble.
la source
Autrement dit, c'est parce que les espaces dans les lignes de commande sont traités au niveau des délimiteurs. Donc:
delete C:\directory\file number 1.shp
ne fonctionnera pas sur la plupart des lignes de commande du système d'exploitation sans ajouter de guillemets:
delete "C:\directory\file number 1.shp"
De nombreux outils SIG sont basés sur la ligne de commande, il est donc plus simple d'utiliser les sous-scores si vous êtes dans un environnement où la ligne de commande est courante. Si vous êtes uniquement un utilisateur de Windows, vous pouvez probablement vous en sortir en laissant simplement des espaces.
la source