My.Computer.FileSystem.WriteAllText, méthode

Mise à jour : novembre 2007

Écrit du texte dans un fichier.

' Usage
My.Computer.FileSystem.WriteAllText(file ,text ,append)
My.Computer.FileSystem.WriteAllText(file ,text ,append ,encoding)
' Declaration
Public Sub WriteAllText( _
   ByVal file As String, _
   ByVal text As String, _
   ByVal append As Boolean _
)
' -or-
Public Sub WriteAllText( _
   ByVal file As String, _
   ByVal text As String, _
   ByVal append As Boolean, _
   ByVal encoding As System.Text.Encoding _
)

Paramètres

  • file
    String. Fichier dans lequel écrire. Obligatoire.

  • text
    String. Texte à écrire. Requis.

  • append
    Boolean. Si besoin d'ajouter du texte ou de remplacer le texte existant. La valeur par défaut est False. Obligatoire.

  • encoding
    Encoding. Quel codage utiliser lorsque vous écrivez dans le fichier. Obligatoire. La valeur par défaut est UTF-8.

Exceptions

Les conditions ci-dessous peuvent générer une exception :

  • le chemin d'accès n'est pas valide pour une des raisons suivantes : il s'agit d'une chaîne de longueur nulle ; il ne contient que des espaces blancs ; il contient des caractères non valides ; se termine par une barre oblique finale, ou il s'agit d'un chemin d'accès de périphérique (qui commence par \\.\) (ArgumentException) ;

  • le chemin d'accès n'est pas valide, car il a la valeur Nothing (ArgumentNullException) ;

  • file pointe vers un chemin d'accès qui n'existe pas (FileNotFoundException ou DirectoryNotFoundException) ;

  • le fichier est utilisé par un autre processus, ou une erreur E/S se produit (IOException) ;

  • le chemin d'accès dépasse la longueur maximale définie par le système (PathTooLongException) ;

  • un nom de fichier ou de répertoire du chemin d'accès contient un signe deux-points (:) ou n'a pas un format correct (NotSupportedException) ;

  • l'utilisateur n'a pas les autorisations nécessaires pour afficher le chemin d'accès (SecurityException).

Si vous exécutez le programme dans un contexte partiellement fiable, le code peut lever une exception en raison d'autorisations insuffisantes. Pour plus d'informations, consultez Notions fondamentales de la sécurité d'accès du code.

Notes

Lorsque aucun codage n'est spécifié, UTF-8 est utilisé. La marque d'ordre d'octet pour le codage est écrite dans le fichier, sauf si vous spécifiez Encoding.Default, qui utilise la page de codes ANSI actuelle du système. Si le codage ne correspond pas au codage existant du fichier, il est ignoré.

Si le chemin d'accès spécifié excluant le nom de fichier n'est pas valide, une exception DirectoryNotFoundException est levée. Si le chemin d'accès est valide mais que le fichier n'existe pas, ce dernier est créé.

Si le paramètre append a la valeur True, la méthode ajoute le texte au fichier ; sinon, le texte existant du fichier est remplacé.

Remarque :

La méthode WriteAllText ouvre un fichier, écrit dans le fichier, puis le ferme. Le code qui utilise la méthode WriteAllText est plus simple que le code qui utilise un objet StreamWriter. Toutefois, si vous ajoutez des chaînes à un fichier à l'aide d'une boucle, un objet StreamWriter peut fournir une meilleure performance parce que vous devez seulement ouvrir et fermer le fichier une seule fois. Pour plus d'informations, consultez My.Computer.FileSystem.OpenTextFileWriter, méthode.

Tâches

Le tableau suivant répertorie des exemples de tâches impliquant la méthode My.Computer.FileSystem.WriteAllText.

Pour

Consultez

Écrire du texte dans un fichier

Comment : insérer du texte dans des fichiers dans Visual Basic

Ajouter du texte dans un fichier

Comment : effectuer un ajout à des fichiers texte dans Visual Basic

Exemple

Cet exemple écrit la ligne "This is new text to be added." dans le fichier Test.txt, ce qui remplace le texte existant dans le fichier.

My.Computer.FileSystem.WriteAllText("C:\TestFolder1\test.txt", _
"This is new text to be added.", False)

Cet exemple écrit les noms des fichiers du dossier Documents and Settings dans FileList.txt, ce qui insère un retour chariot entre chacun d'eux pour une meilleure lisibilité.

For Each foundFile As String In _
My.Computer.FileSystem.GetFiles("C:\Documents and Settings")
    foundFile = foundFile & vbCrLf
    My.Computer.FileSystem.WriteAllText _
    ("C:\Documents and Settings\FileList.txt", foundFile, True)
Next

Configuration requise

Espace de noms :Microsoft.VisualBasic.MyServices

Classe :FileSystemProxy (fournit l'accès à FileSystem)

Assembly : bibliothèque Visual Basic Runtime (dans Microsoft.VisualBasic.dll)

Disponibilité par type de projet

Type de projet

Disponible

Application Windows

Oui

Bibliothèque de classes

Oui

Application console

Oui

Bibliothèque de contrôles Windows

Oui

Bibliothèque de contrôles Web

Oui

Service Windows

Oui

Site Web

Oui

Autorisations

L'autorisation suivante peut être nécessaire :

Autorisation

Description

FileIOPermission

Contrôle la possibilité d'accéder à des fichiers et à des dossiers. Énumération associée : Unrestricted.

Pour plus d'informations, consultez Sécurité d'accès du code et Demande d'autorisations.

Voir aussi

Référence

My.Computer.FileSystem, objet

System.Text.Encoding

FileSystem.WriteAllText

My.Computer.FileSystem.OpenTextFileWriter, méthode

Autres ressources

Écriture dans des fichiers en Visual Basic