Notes
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Les classes System.IO.BinaryWriter et System.IO.BinaryReader sont utilisées pour écrire et lire des données autres que des chaînes de caractères. L’exemple suivant montre comment créer un flux de fichiers vide, y écrire des données et lire des données à partir de celui-ci.
L’exemple crée un fichier de données appelé Test.data dans le répertoire actif, crée les objets associés BinaryWriter et BinaryReader utilise l’objet BinaryWriter pour écrire les entiers 0 à 10 dans Test.data, ce qui laisse le pointeur de fichier à la fin du fichier. L’objet BinaryReader définit ensuite le pointeur de fichier vers l’origine et lit le contenu spécifié.
Remarque
Si Test.data existe déjà dans le répertoire actif, une IOException exception est levée. Utilisez l’option de mode de fichier FileMode.Create plutôt que FileMode.CreateNew pour toujours créer un nouveau fichier sans lever d’exception.
Exemple :
using System;
using System.IO;
class MyStream
{
private const string FILE_NAME = "Test.data";
public static void Main()
{
if (File.Exists(FILE_NAME))
{
Console.WriteLine($"{FILE_NAME} already exists!");
return;
}
using (FileStream fs = new FileStream(FILE_NAME, FileMode.CreateNew))
{
using (BinaryWriter w = new BinaryWriter(fs))
{
for (int i = 0; i < 11; i++)
{
w.Write(i);
}
}
}
using (FileStream fs = new FileStream(FILE_NAME, FileMode.Open, FileAccess.Read))
{
using (BinaryReader r = new BinaryReader(fs))
{
for (int i = 0; i < 11; i++)
{
Console.WriteLine(r.ReadInt32());
}
}
}
}
}
// The example creates a file named "Test.data" and writes the integers 0 through 10 to it in binary format.
// It then writes the contents of Test.data to the console with each integer on a separate line.
Imports System.IO
Class MyStream
Private Const FILE_NAME As String = "Test.data"
Public Shared Sub Main()
If File.Exists(FILE_NAME) Then
Console.WriteLine($"{FILE_NAME} already exists!")
Return
End If
Using fs As New FileStream(FILE_NAME, FileMode.CreateNew)
Using w As New BinaryWriter(fs)
For i As Integer = 0 To 10
w.Write(i)
Next
End Using
End Using
Using fs As New FileStream(FILE_NAME, FileMode.Open, FileAccess.Read)
Using r As New BinaryReader(fs)
For i As Integer = 0 To 10
Console.WriteLine(r.ReadInt32())
Next
End Using
End Using
End Sub
End Class
' The example creates a file named "Test.data" and writes the integers 0 through 10 to it in binary format.
' It then writes the contents of Test.data to the console with each integer on a separate line.
Voir aussi
- BinaryReader
- BinaryWriter
- FileStream
- FileStream.Seek
- SeekOrigin
- Guide pratique pour énumérer les répertoires et les fichiers
- Guide pratique pour ouvrir et ajouter à un fichier journal
- Guide pratique pour lire du texte à partir d’un fichier
- Guide pratique pour écrire du texte dans un fichier
- Guide pratique pour lire des caractères à partir d’une chaîne
- Guide pratique pour écrire des caractères dans une chaîne
- E/S de fichier et de flux