Golang filepath

Golang filepath
Le package FilePath dans GO vous permet d'analyser et de manipuler des chemins de fichiers qui sont une manière bien adaptée au système d'exploitation cible.

Une de ces applications consiste à naviguer dans les répertoires dans Windows et Unix-like Systems. Par exemple, Windows implémente ses filepaths en utilisant des barres obsédantes comme: Dir \ Dir \ Fichier.extension. Linux en utilisant une barre oblique (/). Par conséquent, avoir un moyen de créer un chemin compatible avec les deux systèmes est très utile.

Ce guide découvrira comment utiliser le package FilePath pour manipuler divers aspects des chemins de fichier.

Chemin du fichier.Abdos()

La méthode ABS () du package FilePath vous permet d'obtenir le chemin absolu d'un chemin spécifié. Si le chemin spécifié n'est pas absolu, la fonction le rejoindra avec le répertoire de travail actuel pour créer un chemin absolu.

La syntaxe de fonction est comme indiqué:

Func ABS (Path String) (chaîne, erreur)

La fonction emprunte le chemin comme un paramètre et renvoie son chemin absolu ou une erreur.

package principal
importer (
"FMT"
"chemin / filepath"
)
funcmain ()
fmt.Println (filepath.Abdos("/"))
fmt.Println (filepath.Abdos("."))
fmt.Println (filepath.Abs ("/ windows")) // pas absolu

Si nous exécutons le code ci-dessus sur une machine Windows, nous devrions obtenir une sortie comme suit:

C: \
C: \ Users \ csalem \ Documents \ workspace \ filepath
C: \ Windows

Sur Linux, le code renvoie:

/ /
/ Home / Debian11
/les fenêtres

Chemin du fichier.Base()

Cette fonction renvoie le dernier élément du chemin fourni. La fonction supprime tous les séparateurs de chemin avant de retirer le dernier élément. Si le chemin fourni est vide, la fonction renvoie «.".

Un exemple de programme est comme indiqué:

fmt.Println (filepath.Base ("/ var / log / alternatives.enregistrer"))

Le code ci-dessus doit renvoyer le dernier élément du chemin comme:

alternatives.enregistrer

Si vous fournissez une seule entrée à la fonction, il se renvoie comme:

fmt.Println (filepath.Base ("Alternatives.enregistrer"))

Sortir:

alternatives.enregistrer

Chemin du fichier.Dir ()

La méthode dir () renvoie toute la partie sauf la dernière partie du chemin. Considérez-le comme l'opposé de la méthode de base ().

La syntaxe de fonction est comme:

Func Dir (Path String)

Un exemple est comme indiqué:

fmt.Println (filepath.Dir ("/ var / log / alternatives.enregistrer"))

La valeur résultante est comme:

/ var / log

Chemin du fichier.Rejoindre()

C'est l'une des méthodes les plus utiles fournies par le package FilePath. Il est utilisé pour construire un chemin absolu basé sur les paramètres fournis.

La syntaxe de fonction est comme:

Func Join (Elem… String) String

La fonction prend n'importe quel nombre d'éléments et renvoie une valeur absolue construite en fonction du système d'exploitation cible.

Par exemple:

fmt.Println (filepath.Join ("dir1", "dir2", "dir3", "nom de fichier.SMS"))

Si nous exécutons le code ci-dessus sur Windows, nous devons prendre un chemin comme:

dir1 \ dir2 \ dir3 \ nom de fichier.SMS

Sur Linux, la sortie est comme:

dir1 / dir2 / dir3 / nom de fichier.SMS

Chemin du fichier.Isabs ()

Vous pouvez utiliser cette fonction pour vérifier si le chemin fourni est absolu. Il renvoie vrai si le chemin est absolu et faux si autrement.

Un exemple est comme indiqué:

fmt.Println (filepath.Isabs ("/ home / debian"))
fmt.Println (filepath.Isabs ("./ "))
La fonction renvoie:
vrai
FAUX

Chemin du fichier.Ext ()

La méthode ext () renvoie l'extension de fichier à partir du nom de fichier fourni. Un exemple est comme indiqué:

fmt.Println (filepath.Ext ("/ home / ubuntu / tar.gz "))

L'exemple ci-dessus doit renvoyer l'extension de fichier comme:

.gz

Ceci est une méthode merveilleuse pour vérifier le type de fichier.

Chemin du fichier.Volumename

La méthode volumeName () vous permet d'obtenir le nom principal du volume à partir d'un chemin spécifié.

Exemple:

fmt.Println (filepath.VolumeName ("C: \\ Windows \\ System32"))

La fonction doit renvoyer le nom du volume comme:

C:

Conclusion

En utilisant le tutoriel, vous découvrez les bases de la travail avec les Filepaths à l'aide du package FilePath. Vérifiez la documentation pour explorer plus.

Codage heureux!