Golang OS ouvert

Golang OS ouvert

Vous devrez lire ou écrire des fichiers dans vos programmes presque tout le temps. C'est une exigence de base que chaque programmeur devrait avoir sous ses ceintures. Cet article couvrira comment ouvrir et lire des fichiers en Go en utilisant le package OS.

Package Golang OS

Pour lire et écrire des fichiers en Go, nous devons importer le package OS. Vous pouvez l'importer à l'aide du mot clé d'importation comme indiqué ci-dessous:

Importer "OS"

Une fois importé, vous pouvez effectuer des opérations de fichiers sans erreur.

OS.Ouvrir()

Avant d'utiliser la méthode Open () pour ouvrir et lire le fichier, préparons notre environnement. Créer un répertoire de travail:

mkdir read_file

Naviguer dans le répertoire et créer un fichier texte:

CD read_file
toucher bonjour.SMS

Une fois que nous avons un fichier texte à lire, ouvrez-le avec votre éditeur de texte préféré et ajoutez du contenu:

$ vim bonjour.SMS
"Bonjour du bonjour.fichier txt "

Fermer et enregistrer le fichier.

Pour ouvrir et lire le fichier dans Go, créez un fichier Go et entrez le code:

fichier, err: = os.Ouvert ("Bonjour.SMS")
Si err != nil
enregistrer.Fatal (euh)

Une fois que nous ouvrons le fichier, nous pouvons lire les données du fichier dans une tranche d'octets. Nous pouvons le faire en utilisant la méthode de lecture, qui prend la taille de l'octet comme argument. Un exemple est comme indiqué:

file_data: = make ([] octet, 50)
compter, err: = fichier.Lire (file_data)
Si err != nil
enregistrer.Fatal (euh)

fmt.Printf ("lire% d octets:% q \ n", count, file_data [: count])

Dans cette section, nous utilisons la création d'une tranche d'octets. Nous utilisons ensuite la méthode read () pour lire les données du fichier.

Nous vérifions les erreurs, puis déterminons le nombre d'octets que nous lisons à partir du fichier. À l'aide de la méthode printf, nous imprimons le contenu du fichier.

La sortie résultante:

Lire 29 octets: «Bonjour du bonjour.fichier txt"

Comme vous pouvez le voir, nous lisons précisément 29 octets du fichier.

Si nous essayons d'ouvrir un fichier qui n'existe pas, la fonction renvoie une erreur comme indiqué:

fichier, err: = os.Ouvert ("Info.SMS")

Sortie d'erreur:

Informations ouvertes.txt: le système ne peut pas trouver le fichier spécifié.
Statut de sortie 1

OS.Fichier ouvert()

La méthode OpenFile () vous permet d'ouvrir un fichier avec l'indicateur spécifié. Ces drapeaux incluent:

  1. O_rdonly- Mode en lecture seule.
  2. O_wronly. Ouvre le fichier en mode d'écriture uniquement.
  3. O_RDWR-Ouvrez le fichier en mode lecture-écriture.
  4. O_APPEND-Ajoute des données au fichier lors de l'écriture.
  5. O_trunc-Tronquer le fichier lors de l'ouverture, le cas échéant.
  6. O_SYNC - Ouvrez le fichier pour les E / S synchrones.
  7. O_CREATE - Créez un fichier s'il n'existe pas.

Vous pouvez spécifier n'importe quel indicateur lors de l'ouverture d'un fichier en fonction de vos exigences.

Si vous appelez la méthode OpenFile () avec l'indicateur O_Create, si le fichier n'existe pas, il est créé avec l'autorisation de mode avant Umask.

Exemple:

fichier, err: = os.OpenFile ("Nouveau.txt ", os.O_RDWR | OS.O_Create, 0777)
Si err != nil
enregistrer.Fatal (euh)

Si err: = fichier.Fermer(); se tromper != nil
enregistrer.Fatal (euh)

Dans l'exemple ci-dessus, nous utilisons la méthode OpenFile () pour ouvrir un fichier en mode lecture / écriture comme spécifié par le système d'exploitation.Drapeau rdwr (). Nous spécifions également le système d'exploitation.O_CREATE INCLAPIR pour créer le fichier s'il n'existe pas.

Notez que nous spécifions également l'autorisation de 0755.

Si nous exécutons le code ci-dessus, il devrait créer un fichier appelé nouveau.SMS.

$ ls -LA
-RW-R - r-- 1 CSALEM 197121 0 janvier 24 15:00 Nouveau.SMS

Conclusion

Ce guide nous a appris à ouvrir et lire des fichiers en Go en utilisant les méthodes Open et OpenFile (). Explorez la documentation pour en savoir plus.

Merci d'avoir lu!