Maison >développement back-end >Golang >Comment exploiter des fichiers dans Golang
En langage Go, la lecture et la modification de fichiers sont des besoins très courants. Dans cet article, nous présenterons comment utiliser les fichiers, notamment l'ouverture de fichiers, la suppression du contenu des fichiers, l'obtention d'informations sur les fichiers et la restauration des fichiers à leur état d'origine.
1. Ouvrez le fichier
Utilisez la fonction os.OpenFile() pour ouvrir le fichier, qui peut accepter de nombreux paramètres. Dans ce cas, nous transmettons simplement le nom du fichier et l'indicateur.
Les indicateurs de fichiers sont modifiés selon les besoins. Par exemple, si vous souhaitez ajouter du contenu à la fin du fichier, vous devez définir l'indicateur sur os.O_APPEND | os.O_WRONLY.
Exemple de code :
f, err := os.OpenFile("example.txt", os.O_RDWR, 0644) if err != nil { log.Fatal(err) } defer f.Close()
2. Supprimez le contenu du fichier
Utilisez la fonction os.Truncate() pour supprimer le contenu du fichier. Cette fonction accepte un paramètre de décalage et un paramètre de longueur. Le décalage représente la position de départ du fichier à tronquer et la longueur représente le nombre d'octets à tronquer.
Exemple de code :
err := os.Truncate("example.txt", 0) if err != nil { log.Fatal(err) }
3. Obtenir des informations sur le fichier
Utilisez la fonction os.Stat() pour obtenir les métadonnées du fichier. Les métadonnées obtenues incluent la taille du fichier, l'heure de modification, le mode du fichier, etc.
Exemple de code :
fi, err := os.Stat("example.txt") if err != nil { log.Fatal(err) } fmt.Println(fi.Size()) fmt.Println(fi.Mode()) fmt.Println(fi.ModTime())
4. Restaurez le fichier à son état d'origine
Si vous souhaitez restaurer le fichier à son état d'origine, vous devez charger l'ancien contenu avant d'écrire le nouveau contenu, puis écrire le ancien contenu dans le fichier.
Exemple de code :
// 读取原始内容 b, err := ioutil.ReadFile("example.txt") if err != nil { log.Fatal(err) } // 写入新内容 _, err = fmt.Fprint(f, "new content") if err != nil { log.Fatal(err) } // 将原始内容写回去 _, err = f.Seek(0, 0) if err != nil { log.Fatal(err) } _, err = f.Write(b) if err != nil { log.Fatal(err) }
Ce qui précède est une simple opération de modification de fichier. J'espère que cet article pourra vous aider !
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!