Manipulations de fichier avec fso

Manipulations de fichiers avec le FileSystemObject

Bonjour à tous,

Je vais expliquer ici comment manipuler des fichiers avec FSO.
Vous verrez, c'est très simple.
Amusez-vous bien, chers programmeurs...

' Tutorial FSO
'Écrit par Thunder
'Insérer ceci où vous le désirez :)

'On déclare FSO, et on l'assigne à un objet
Public FSO As Object
Set FSO = CreateObject("Scripting.FileSystemObject")

Sub Form1_Load()
'On déclare l'objet qui nous sert à écrire ou lire un fichier
'À noter : Obj.OpenTextFile(Chemin, Numéro, Booléen)
'Chemin, c'est le chemin du fichier (chemin complet)
'Numéro, c'est soit 1, 2 ou 8
    '1 : Lire le fichier
    '2 : Écrasez et écrire dans le fichier
    '8 : Écrire dans le fichier
'Booléen :
    'True : Crée le fichier s'il n'existe pas
    'False : Ne crée pas le fichier s'il n'existe pas (et on obtient une erreur)
 Dim File As Object
 Set File = FSO.OpenTextFile("C:\chemin.txt", 1, True)

'On déclare la variable qui va contenir la ligne lue
 Dim TEMP_Line As String
'On lit le fichier tant et aussi longtemps que nous ne sommes rendus en bas
 Do While Not File.AtEndOfStream
'TEMP_Line contiendra la ligne. Nous pouvons faire toutes sortes de manipulations
'avec cette variable. À noter qu'on ne peut utiliser plus d'une fois .ReadLine par fichier
'ouvert. C'est pourquoi il faut l'assigner à une variable
   TEMP_Line = File.ReadLine
   MsgBox("Ligne lue: " & TEMP_Line)
Loop
'Il ne faut absolument pas oublier de fermer le fichier
  File.Close

  Set File = FSO.OpenTextFile("C:\chemin.txt", 2, True)
'On écrase tout le texte qui était déjà dans le fichier pour en écrire d'autre
  File.Write "Nous avons effacé tout le texte contenu dans ce fichier !"
  File.WriteLine "Write écrit un bloc de texte, tandis que WriteLine écrit seulement une ligne."

'Une fois encore, on n'oublie pas de fermer le fichier
  File.Close

  Set File = FSO.OpenTextFile("C:\chemin.txt", 8, True)
'Cette fois-ci, on va écrire dans le fichier sans pour autant écraser le texte que nous avons
'précédemment mis.
  File.WriteLine "Ce texte suit la ligne « Write écrit un bloc de texte, tandis que WriteLine écrit seulement une ligne. »"
  File.Close
End Sub
A voir également
Ce document intitulé « Manipulations de fichier avec fso » issu de CodeS SourceS (codes-sources.commentcamarche.net) est mis à disposition sous les termes de la licence Creative Commons. Vous pouvez copier, modifier des copies de cette page, dans les conditions fixées par la licence, tant que cette note apparaît clairement.
Rejoignez-nous