Méthode OpenTextFile

Ouvre un fichier spécifié et renvoie un objet TextStream qui peut être utilisé pour lire ce fichier, écrire dedans ou y ajouter des éléments à la fin.

Syntaxe

object.OpenTextFile(filename[, iomode[, create]])

Arguments :

  • object : requis. La valeur pour object est toujours le nom d'un objet FileSystemObject.
  • filename : requis. Expression de chaîne qui identifie le fichier à ouvrir.
  • iomode : facultatif. La valeur peut être l'une des trois constantes suivantes : ForReading, ForWriting ou ForAppending.
  • create : facultatif. Valeur booléenne indiquant si un fichier peut être créé si le nom de fichier spécifié n'existe pas. La valeur est True si un fichier est créé et False s'il ne l'est pas. En cas d'omission, aucun fichier n'est créé.
  • format : facultatif. Indique le format du fichier ouvert.

    Remarque :

    L'argument format est passif et conservé pour reproduire la syntaxe de script VB. Il n'a aucun effet. Tous les fichiers créés sont au format Unicode uniquement.

Paramètres

L'argument iomode peut avoir l'un des paramètres suivants :

Tableau 11-34 Paramètres de l'argument iomode

Constante Valeur Description
ForReading 1 Permet d'ouvrir un fichier en lecture seule. Vous ne pouvez pas écrire dans ce fichier.
ForWriting 2 Permet d'ouvrir un fichier en écriture.
ForWriting 8 Permet d'ouvrir un fichier et d'écrire à la fin de celui-ci.

Remarques

Les exemples de code suivants illustrent l'utilisation de la méthode OpenTextFile.

Remarque :

  • Si un fichier est créé, il le sera au format Unicode.

  • Si le fichier n'existe pas, le code générera une erreur dans ReadMode.

Exemple 1 :

Sub OpenFileForReading()
    Const ForReading = 1
    Dim fso, tso
    Set fso = CreateObject("Scripting.FileSystemObject")
    Set tso = fso.OpenTextFile("C:\example1.txt", ForReading)    
    tso.Close               ' Close the file.

    Set tso = Nothing
    Set fso = Nothing
End Sub

Call OpenFileForReading
'If C:\example1.txt is not present then code will throw an error. 

Exemple 2 :

Sub OpenFileForWriting()
    Const ForWriting = 2
    Dim fso, file
    Set fso = CreateObject("Scripting.FileSystemObject")
    Set file = fso.OpenTextFile("C:\example2.txt", ForWriting, True)
    
    file.WriteLine("This is written to the file.")   ' Writes text to the file.
    file.Close               ' Close the file.

    Set file = Nothing
    Set fso = Nothing
End Sub

Call OpenFileForWriting
'Creates C:\example2.txt and writes a line "This is written to the file."

Exemple 3 :

Sub OpenFileForAppending()
    Const ForAppending = 8
    Dim fso, file
    Set fso = CreateObject("Scripting.FileSystemObject")
    Set file = fso.OpenTextFile("C:\example2.txt", ForAppending, True)
    
    file.WriteLine("This line is appended.")   ' Appends text to the file.
    file.Close               ' Close the file.

    Set file = Nothing
    Set fso = Nothing
End Sub

Call OpenFileForAppending
'Creates C:\example2.txt and writes a line "This line is appended.". If file already exists it appends this line.

Exemple 4 :

Sub OpenFileWithCreateOption()
    Const ForWriting = 2
    Dim fso, file
    Set fso = CreateObject("Scripting.FileSystemObject")
    Set file = fso.OpenTextFile("C:\example2.txt", ForWriting, True)   ' Creates the file if it doesn't exist.

    file.WriteLine("New File created and text written.")   ' Writes text to the file.
    file.Close               ' Close the file.
 
    Set file = Nothing
    Set fso = Nothing
End Sub

Call OpenFileWithCreateOption
'Overwrites C:\example2.txt and writes a line "New File created and text written.". If file does not exists then it creates it.