Partager via


StreamReader Constructeurs

Définition

Initialise une nouvelle instance de la StreamReader classe pour le flux spécifié.

Surcharges

Nom Description
StreamReader(Stream)

Initialise une nouvelle instance de la StreamReader classe pour le flux spécifié.

StreamReader(Stream, Encoding, Boolean, Int32, Boolean)

Initialise une nouvelle instance de la StreamReader classe pour le flux spécifié en fonction de l’option d’encodage de caractères, de détection de marque d’octets et de taille de mémoire tampon spécifiée, et laisse éventuellement le flux ouvert.

StreamReader(String, Encoding, Boolean, FileStreamOptions)

Initialise une nouvelle instance de la StreamReader classe pour le chemin d’accès de fichier spécifié, avec l’option de détection de marque d’ordre d’octet, et configurée avec l’objet spécifié FileStreamOptions .

StreamReader(String, Encoding, Boolean, Int32)

Initialise une nouvelle instance de la StreamReader classe pour le nom de fichier spécifié, avec l’option d’encodage de caractères, l’option de détection de marque d’octets et la taille de la mémoire tampon spécifiées.

StreamReader(Stream, Encoding, Boolean, Int32)

Initialise une nouvelle instance de la StreamReader classe pour le flux spécifié, avec l’option d’encodage de caractères, l’option de détection de marque d’octets et la taille de la mémoire tampon spécifiées.

StreamReader(Stream, Encoding, Boolean)

Initialise une nouvelle instance de la StreamReader classe pour le flux spécifié, avec l’option d’encodage de caractères et de détection de marque d’octet spécifiée.

StreamReader(String, Encoding, Boolean)

Initialise une nouvelle instance de la StreamReader classe pour le nom de fichier spécifié, avec l’option d’encodage de caractères et de détection de marque d’octet spécifiée.

StreamReader(String, FileStreamOptions)

Initialise une nouvelle instance de la StreamReader classe pour le chemin d’accès de fichier spécifié, à l’aide de l’encodage par défaut, en activant la détection des marques d’ordre d’octet au début du fichier et configurées avec l’objet spécifié FileStreamOptions .

StreamReader(String, Boolean)

Initialise une nouvelle instance de la StreamReader classe pour le nom de fichier spécifié, avec l’option de détection de marque d’ordre d’octet spécifiée.

StreamReader(Stream, Encoding)

Initialise une nouvelle instance de la StreamReader classe pour le flux spécifié, avec l’encodage de caractères spécifié.

StreamReader(Stream, Boolean)

Initialise une nouvelle instance de la StreamReader classe pour le flux spécifié, avec l’option de détection de marque d’ordre d’octet spécifiée.

StreamReader(String)

Initialise une nouvelle instance de la StreamReader classe pour le nom de fichier spécifié.

StreamReader(String, Encoding)

Initialise une nouvelle instance de la StreamReader classe pour le nom de fichier spécifié, avec l’encodage de caractères spécifié.

StreamReader(Stream)

Source:
StreamReader.cs
Source:
StreamReader.cs
Source:
StreamReader.cs
Source:
StreamReader.cs
Source:
StreamReader.cs

Initialise une nouvelle instance de la StreamReader classe pour le flux spécifié.

public:
 StreamReader(System::IO::Stream ^ stream);
public StreamReader(System.IO.Stream stream);
new System.IO.StreamReader : System.IO.Stream -> System.IO.StreamReader
Public Sub New (stream As Stream)

Paramètres

stream
Stream

Flux à lire.

Exceptions

stream ne prend pas en charge la lecture.

stream a la valeur null.

Exemples

L’exemple de code suivant illustre ce StreamReader constructeur.

using System;
using System.IO;

class Test
{
    public static void Main()
    {
        string path = @"c:\temp\MyTest.txt";

        try
        {
            if (File.Exists(path))
            {
                File.Delete(path);
            }

            using (StreamWriter sw = new StreamWriter(new FileStream(path, FileMode.CreateNew)))
            {
                sw.WriteLine("This");
                sw.WriteLine("is some text");
                sw.WriteLine("to test");
                sw.WriteLine("reading");
            }

            using (StreamReader sr = new StreamReader(new FileStream(path, FileMode.Open)))
            {
                while (sr.Peek() >= 0)
                {
                    Console.WriteLine(sr.ReadLine());
                }
            }
        }
        catch (Exception e)
        {
            Console.WriteLine("The process failed: {0}", e.ToString());
        }
    }
}
Imports System.IO

Public Class Test

    Public Shared Sub Main()
        Dim path As String = "c:\temp\MyTest.txt"

        Try
            If File.Exists(path) Then
                File.Delete(path)
            End If

            Dim sw As StreamWriter = New StreamWriter(path)
            sw.WriteLine("This")
            sw.WriteLine("is some text")
            sw.WriteLine("to test")
            sw.WriteLine("Reading")
            sw.Close()

            Dim fs As FileStream = New FileStream(path, FileMode.Open)

            Dim sr As StreamReader = New StreamReader(fs)

            Do While sr.Peek() >= 0
                Console.WriteLine(sr.ReadLine())
            Loop
            sr.Close()
            fs.Close()
        Catch e As Exception
            Console.WriteLine("The process failed: {0}", e.ToString())
        End Try
    End Sub
End Class

Remarques

Ce constructeur initialise l’encodage sur UTF8Encoding, la BaseStream propriété à l’aide du stream paramètre et la taille de mémoire tampon interne à 1024 octets.

L’objet StreamReader appelle Dispose() l’objet fourni Stream lorsqu’il StreamReader.Dispose est appelé.

Avertissement

Lorsque vous compilez un ensemble de caractères avec un paramètre culturel particulier et récupérez ces mêmes caractères avec un paramètre culturel différent, les caractères peuvent ne pas être interprétables et peuvent provoquer la levée d’une exception.

Pour obtenir la liste des tâches d’E/S courantes, consultez Tâches d’E/S courantes.

Voir aussi

S’applique à

StreamReader(Stream, Encoding, Boolean, Int32, Boolean)

Source:
StreamReader.cs
Source:
StreamReader.cs
Source:
StreamReader.cs
Source:
StreamReader.cs
Source:
StreamReader.cs

Initialise une nouvelle instance de la StreamReader classe pour le flux spécifié en fonction de l’option d’encodage de caractères, de détection de marque d’octets et de taille de mémoire tampon spécifiée, et laisse éventuellement le flux ouvert.

public:
 StreamReader(System::IO::Stream ^ stream, System::Text::Encoding ^ encoding, bool detectEncodingFromByteOrderMarks, int bufferSize, bool leaveOpen);
public StreamReader(System.IO.Stream stream, System.Text.Encoding encoding, bool detectEncodingFromByteOrderMarks, int bufferSize, bool leaveOpen);
public StreamReader(System.IO.Stream stream, System.Text.Encoding? encoding = default, bool detectEncodingFromByteOrderMarks = true, int bufferSize = -1, bool leaveOpen = false);
new System.IO.StreamReader : System.IO.Stream * System.Text.Encoding * bool * int * bool -> System.IO.StreamReader
Public Sub New (stream As Stream, encoding As Encoding, detectEncodingFromByteOrderMarks As Boolean, bufferSize As Integer, leaveOpen As Boolean)
Public Sub New (stream As Stream, Optional encoding As Encoding = Nothing, Optional detectEncodingFromByteOrderMarks As Boolean = true, Optional bufferSize As Integer = -1, Optional leaveOpen As Boolean = false)

Paramètres

stream
Stream

Flux à lire.

encoding
Encoding

Encodage de caractères à utiliser.

detectEncodingFromByteOrderMarks
Boolean

true pour rechercher des marques d’ordre d’octet au début du fichier ; sinon, false.

bufferSize
Int32

Taille minimale de la mémoire tampon, en octets.

leaveOpen
Boolean

true pour laisser le flux ouvert une fois l’objet StreamReader supprimé ; sinon, false.

Remarques

Sauf si vous définissez le leaveOpen paramètre truesur , l’objet StreamReader appelle Dispose() l’objet fourni Stream lorsqu’il StreamReader.Dispose est appelé.

La taille de la mémoire tampon, en octets, est définie par le bufferSize paramètre. Si bufferSize elle est inférieure à la taille minimale autorisée (128 octets), la taille minimale autorisée est utilisée.

Ce constructeur vous permet de modifier l’encodage la première fois que vous lisez à partir de l’objet StreamReader . Si le detectEncodingFromByteOrderMarks paramètre est true, le constructeur détecte l’encodage en examinant les quatre premiers octets du flux. Il reconnaît automatiquement UTF-8, little-endian UTF-16, big-endian UTF-16, little-endian UTF-32 et big-endian UTF-32 text si le fichier commence par les marques d’ordre d’octet appropriées. Sinon, l’encodage fourni par l’utilisateur est utilisé. Pour plus d’informations, consultez la Encoding.GetPreamble méthode.

Note

Lors de la lecture à partir d’un Stream, il est plus efficace d’utiliser une mémoire tampon qui est de la même taille que la mémoire tampon interne du flux.

Avertissement

Lorsque vous compilez un ensemble de caractères avec un paramètre culturel particulier et récupérez ces mêmes caractères avec un paramètre culturel différent, les caractères peuvent ne pas être interprétés correctement et peuvent provoquer la levée d’une exception.

S’applique à

StreamReader(String, Encoding, Boolean, FileStreamOptions)

Source:
StreamReader.cs
Source:
StreamReader.cs
Source:
StreamReader.cs
Source:
StreamReader.cs
Source:
StreamReader.cs

Initialise une nouvelle instance de la StreamReader classe pour le chemin d’accès de fichier spécifié, avec l’option de détection de marque d’ordre d’octet, et configurée avec l’objet spécifié FileStreamOptions .

public:
 StreamReader(System::String ^ path, System::Text::Encoding ^ encoding, bool detectEncodingFromByteOrderMarks, System::IO::FileStreamOptions ^ options);
public StreamReader(string path, System.Text.Encoding? encoding, bool detectEncodingFromByteOrderMarks, System.IO.FileStreamOptions options);
public StreamReader(string path, System.Text.Encoding encoding, bool detectEncodingFromByteOrderMarks, System.IO.FileStreamOptions options);
new System.IO.StreamReader : string * System.Text.Encoding * bool * System.IO.FileStreamOptions -> System.IO.StreamReader
Public Sub New (path As String, encoding As Encoding, detectEncodingFromByteOrderMarks As Boolean, options As FileStreamOptions)

Paramètres

path
String

Chemin d’accès complet du fichier à lire.

encoding
Encoding

Encodage de caractères à utiliser.

detectEncodingFromByteOrderMarks
Boolean

Indique s’il faut rechercher des marques d’ordre d’octet au début du fichier.

options
FileStreamOptions

Objet qui spécifie les options de configuration pour le sous-jacent FileStream.

Exceptions

path n’est pas lisible.

      -or-

path est une chaîne vide («  »).

path options ou encoding est null.

Le fichier est introuvable.

Le chemin spécifié n’est pas valide, par exemple sur un lecteur non mappé.

path inclut une syntaxe incorrecte ou non valide pour le nom de fichier, le nom du répertoire ou l’étiquette de volume.

Voir aussi

S’applique à

StreamReader(String, Encoding, Boolean, Int32)

Source:
StreamReader.cs
Source:
StreamReader.cs
Source:
StreamReader.cs
Source:
StreamReader.cs
Source:
StreamReader.cs

Initialise une nouvelle instance de la StreamReader classe pour le nom de fichier spécifié, avec l’option d’encodage de caractères, l’option de détection de marque d’octets et la taille de la mémoire tampon spécifiées.

public:
 StreamReader(System::String ^ path, System::Text::Encoding ^ encoding, bool detectEncodingFromByteOrderMarks, int bufferSize);
public StreamReader(string path, System.Text.Encoding? encoding, bool detectEncodingFromByteOrderMarks, int bufferSize);
public StreamReader(string path, System.Text.Encoding encoding, bool detectEncodingFromByteOrderMarks, int bufferSize);
new System.IO.StreamReader : string * System.Text.Encoding * bool * int -> System.IO.StreamReader
Public Sub New (path As String, encoding As Encoding, detectEncodingFromByteOrderMarks As Boolean, bufferSize As Integer)

Paramètres

path
String

Chemin d’accès complet du fichier à lire.

encoding
Encoding

Encodage de caractères à utiliser.

detectEncodingFromByteOrderMarks
Boolean

Indique s’il faut rechercher des marques d’ordre d’octet au début du fichier.

bufferSize
Int32

Taille minimale de la mémoire tampon, en octets.

Exceptions

path est une chaîne vide («  »).

path ou encoding est null.

Le fichier est introuvable.

Le chemin spécifié n’est pas valide, par exemple sur un lecteur non mappé.

path inclut une syntaxe incorrecte ou non valide pour le nom de fichier, le nom du répertoire ou l’étiquette de volume.

bufferSize est inférieur ou égal à zéro, à l’exception de -1, qui est autorisé à indiquer la taille de mémoire tampon par défaut.

Exemples

L’exemple de code suivant illustre ce StreamReader constructeur.

private void getNewStreamReader()
{
    //Get a new StreamReader in ASCII format from a
    //file using a buffer and byte order mark detection
    StreamReader srAsciiFromFileFalse512 =
        new StreamReader("C:\\Temp\\Test.txt",
        System.Text.Encoding.ASCII, false, 512);
    //Get a new StreamReader in ASCII format from a
    //file with byte order mark detection = false
    StreamReader srAsciiFromFileFalse =
        new StreamReader("C:\\Temp\\Test.txt",
        System.Text.Encoding.ASCII, false);
    //Get a new StreamReader in ASCII format from a file
    StreamReader srAsciiFromFile =
        new StreamReader("C:\\Temp\\Test.txt",
        System.Text.Encoding.ASCII);
    //Get a new StreamReader from a
    //file with byte order mark detection = false
    StreamReader srFromFileFalse =
        new StreamReader("C:\\Temp\\Test.txt", false);
    //Get a new StreamReader from a file
    StreamReader srFromFile =
        new StreamReader("C:\\Temp\\Test.txt");
    //Get a new StreamReader in ASCII format from a
    //FileStream with byte order mark detection = false and a buffer
    StreamReader srAsciiFromStreamFalse512 = new StreamReader(
        (System.IO.Stream)File.OpenRead("C:\\Temp\\Test.txt"),
        System.Text.Encoding.ASCII, false, 512);
    //Get a new StreamReader in ASCII format from a
    //FileStream with byte order mark detection = false
    StreamReader srAsciiFromStreamFalse = new StreamReader(
        (System.IO.Stream)File.OpenRead("C:\\Temp\\Test.txt"),
        System.Text.Encoding.ASCII, false);
    //Get a new StreamReader in ASCII format from a FileStream
    StreamReader srAsciiFromStream = new StreamReader(
        (System.IO.Stream)File.OpenRead("C:\\Temp\\Test.txt"),
        System.Text.Encoding.ASCII);
    //Get a new StreamReader from a
    //FileStream with byte order mark detection = false
    StreamReader srFromStreamFalse = new StreamReader(
        (System.IO.Stream)File.OpenRead("C:\\Temp\\Test.txt"),
        false);
    //Get a new StreamReader from a FileStream
    StreamReader srFromStream = new StreamReader(
        (System.IO.Stream)File.OpenRead("C:\\Temp\\Test.txt"));
}
Private Sub getNewStreamReader()
    Dim S As Stream = File.OpenRead("C:\Temp\Test.txt")
    'Get a new StreamReader in ASCII format from a
    'file using a buffer and byte order mark detection
    Dim SrAsciiFromFileFalse512 As StreamReader = New StreamReader("C:\Temp\Test.txt", _
        System.Text.Encoding.ASCII, False, 512)
    'Get a new StreamReader in ASCII format from a
    'file with byte order mark detection = false
    Dim SrAsciiFromFileFalse As StreamReader = New StreamReader("C:\Temp\Test.txt", _
        System.Text.Encoding.ASCII, False)
    'Get a new StreamReader in ASCII format from a file 
    Dim SrAsciiFromFile As StreamReader = New StreamReader("C:\Temp\Test.txt", _
        System.Text.Encoding.ASCII)
    'Get a new StreamReader from a
    'file with byte order mark detection = false        
    Dim SrFromFileFalse As StreamReader = New StreamReader("C:\Temp\Test.txt", False)
    'Get a new StreamReader from a file
    Dim SrFromFile As StreamReader = New StreamReader("C:\Temp\Test.txt")
    'Get a new StreamReader in ASCII format from a
    'FileStream with byte order mark detection = false and a buffer
    Dim SrAsciiFromStreamFalse512 As StreamReader = New StreamReader(S, _
        System.Text.Encoding.ASCII, False, 512)
    'Get a new StreamReader in ASCII format from a
    'FileStream with byte order mark detection = false
    Dim SrAsciiFromStreamFalse = New StreamReader(S, _
        System.Text.Encoding.ASCII, False)
    'Get a new StreamReader in ASCII format from a FileStream
    Dim SrAsciiFromStream As StreamReader = New StreamReader(S, _
        System.Text.Encoding.ASCII)
    'Get a new StreamReader from a
    'FileStream with byte order mark detection = false
    Dim SrFromStreamFalse As StreamReader = New StreamReader(S, False)
    'Get a new StreamReader from a FileStream
    Dim SrFromStream As StreamReader = New StreamReader(S)

End Sub

Remarques

Ce constructeur initialise l’encodage tel que spécifié par le encoding paramètre.

Ce constructeur vous permet de modifier l’encodage la première fois que vous lisez à partir de l’objet StreamReader . Le detectEncodingFromByteOrderMarks paramètre détecte l’encodage en examinant les quatre premiers octets du flux. Il reconnaît automatiquement UTF-8, little-endian UTF-16, big-endian UTF-16, little-endian UTF-32 et big-endian UTF-32 text si le fichier commence par les marques d’ordre d’octet appropriées. Sinon, l’encodage fourni par l’utilisateur est utilisé. Pour plus d’informations, consultez la Encoding.GetPreamble méthode.

La taille de la mémoire tampon, en octets, est définie par le bufferSize paramètre. Si bufferSize elle est inférieure à la taille minimale autorisée (128 octets), la taille minimale autorisée est utilisée.

Le path paramètre peut être un nom de fichier, y compris un fichier sur un partage UNC (Universal Naming Convention).

Le path paramètre n’est pas obligatoire pour être un fichier stocké sur le disque ; il peut s’agir d’une partie d’un système qui prend en charge l’accès à l’aide de flux.

Avertissement

Lorsque vous compilez un ensemble de caractères avec un paramètre culturel particulier et récupérez ces mêmes caractères avec un paramètre culturel différent, les caractères peuvent ne pas être interprétables et peuvent provoquer la levée d’une exception.

Pour obtenir la liste des tâches d’E/S courantes, consultez Tâches d’E/S courantes.

Voir aussi

S’applique à

StreamReader(Stream, Encoding, Boolean, Int32)

Source:
StreamReader.cs
Source:
StreamReader.cs
Source:
StreamReader.cs
Source:
StreamReader.cs
Source:
StreamReader.cs

Initialise une nouvelle instance de la StreamReader classe pour le flux spécifié, avec l’option d’encodage de caractères, l’option de détection de marque d’octets et la taille de la mémoire tampon spécifiées.

public:
 StreamReader(System::IO::Stream ^ stream, System::Text::Encoding ^ encoding, bool detectEncodingFromByteOrderMarks, int bufferSize);
public StreamReader(System.IO.Stream stream, System.Text.Encoding encoding, bool detectEncodingFromByteOrderMarks, int bufferSize);
public StreamReader(System.IO.Stream stream, System.Text.Encoding? encoding, bool detectEncodingFromByteOrderMarks, int bufferSize);
new System.IO.StreamReader : System.IO.Stream * System.Text.Encoding * bool * int -> System.IO.StreamReader
Public Sub New (stream As Stream, encoding As Encoding, detectEncodingFromByteOrderMarks As Boolean, bufferSize As Integer)

Paramètres

stream
Stream

Flux à lire.

encoding
Encoding

Encodage de caractères à utiliser.

detectEncodingFromByteOrderMarks
Boolean

Indique s’il faut rechercher des marques d’ordre d’octet au début du fichier.

bufferSize
Int32

Taille minimale de la mémoire tampon, en octets.

Exceptions

Le flux ne prend pas en charge la lecture.

stream ou encoding est null.

bufferSize est inférieur ou égal à zéro, à l’exception de -1, qui est autorisé à indiquer la taille de mémoire tampon par défaut.

Exemples

L’exemple de code suivant illustre ce StreamReader constructeur.

private void getNewStreamReader()
{
    //Get a new StreamReader in ASCII format from a
    //file using a buffer and byte order mark detection
    StreamReader srAsciiFromFileFalse512 =
        new StreamReader("C:\\Temp\\Test.txt",
        System.Text.Encoding.ASCII, false, 512);
    //Get a new StreamReader in ASCII format from a
    //file with byte order mark detection = false
    StreamReader srAsciiFromFileFalse =
        new StreamReader("C:\\Temp\\Test.txt",
        System.Text.Encoding.ASCII, false);
    //Get a new StreamReader in ASCII format from a file
    StreamReader srAsciiFromFile =
        new StreamReader("C:\\Temp\\Test.txt",
        System.Text.Encoding.ASCII);
    //Get a new StreamReader from a
    //file with byte order mark detection = false
    StreamReader srFromFileFalse =
        new StreamReader("C:\\Temp\\Test.txt", false);
    //Get a new StreamReader from a file
    StreamReader srFromFile =
        new StreamReader("C:\\Temp\\Test.txt");
    //Get a new StreamReader in ASCII format from a
    //FileStream with byte order mark detection = false and a buffer
    StreamReader srAsciiFromStreamFalse512 = new StreamReader(
        (System.IO.Stream)File.OpenRead("C:\\Temp\\Test.txt"),
        System.Text.Encoding.ASCII, false, 512);
    //Get a new StreamReader in ASCII format from a
    //FileStream with byte order mark detection = false
    StreamReader srAsciiFromStreamFalse = new StreamReader(
        (System.IO.Stream)File.OpenRead("C:\\Temp\\Test.txt"),
        System.Text.Encoding.ASCII, false);
    //Get a new StreamReader in ASCII format from a FileStream
    StreamReader srAsciiFromStream = new StreamReader(
        (System.IO.Stream)File.OpenRead("C:\\Temp\\Test.txt"),
        System.Text.Encoding.ASCII);
    //Get a new StreamReader from a
    //FileStream with byte order mark detection = false
    StreamReader srFromStreamFalse = new StreamReader(
        (System.IO.Stream)File.OpenRead("C:\\Temp\\Test.txt"),
        false);
    //Get a new StreamReader from a FileStream
    StreamReader srFromStream = new StreamReader(
        (System.IO.Stream)File.OpenRead("C:\\Temp\\Test.txt"));
}
Private Sub getNewStreamReader()
    Dim S As Stream = File.OpenRead("C:\Temp\Test.txt")
    'Get a new StreamReader in ASCII format from a
    'file using a buffer and byte order mark detection
    Dim SrAsciiFromFileFalse512 As StreamReader = New StreamReader("C:\Temp\Test.txt", _
        System.Text.Encoding.ASCII, False, 512)
    'Get a new StreamReader in ASCII format from a
    'file with byte order mark detection = false
    Dim SrAsciiFromFileFalse As StreamReader = New StreamReader("C:\Temp\Test.txt", _
        System.Text.Encoding.ASCII, False)
    'Get a new StreamReader in ASCII format from a file 
    Dim SrAsciiFromFile As StreamReader = New StreamReader("C:\Temp\Test.txt", _
        System.Text.Encoding.ASCII)
    'Get a new StreamReader from a
    'file with byte order mark detection = false        
    Dim SrFromFileFalse As StreamReader = New StreamReader("C:\Temp\Test.txt", False)
    'Get a new StreamReader from a file
    Dim SrFromFile As StreamReader = New StreamReader("C:\Temp\Test.txt")
    'Get a new StreamReader in ASCII format from a
    'FileStream with byte order mark detection = false and a buffer
    Dim SrAsciiFromStreamFalse512 As StreamReader = New StreamReader(S, _
        System.Text.Encoding.ASCII, False, 512)
    'Get a new StreamReader in ASCII format from a
    'FileStream with byte order mark detection = false
    Dim SrAsciiFromStreamFalse = New StreamReader(S, _
        System.Text.Encoding.ASCII, False)
    'Get a new StreamReader in ASCII format from a FileStream
    Dim SrAsciiFromStream As StreamReader = New StreamReader(S, _
        System.Text.Encoding.ASCII)
    'Get a new StreamReader from a
    'FileStream with byte order mark detection = false
    Dim SrFromStreamFalse As StreamReader = New StreamReader(S, False)
    'Get a new StreamReader from a FileStream
    Dim SrFromStream As StreamReader = New StreamReader(S)

End Sub

Remarques

La taille de la mémoire tampon, en octets, est définie par le bufferSize paramètre. Si bufferSize elle est inférieure à la taille minimale autorisée (128 octets), la taille minimale autorisée est utilisée.

Ce constructeur vous permet de modifier l’encodage la première fois que vous lisez à partir de l’objet StreamReader . Le detectEncodingFromByteOrderMarks paramètre détecte l’encodage en examinant les quatre premiers octets du flux. Il reconnaît automatiquement UTF-8, little-endian UTF-16, big-endian UTF-16, little-endian UTF-32 et big-endian UTF-32 text si le fichier commence par les marques d’ordre d’octet appropriées. Sinon, l’encodage fourni par l’utilisateur est utilisé. Pour plus d’informations, consultez la Encoding.GetPreamble méthode.

L’objet StreamReader appelle Dispose() l’objet fourni Stream lorsqu’il StreamReader.Dispose est appelé.

Note

Lors de la lecture à partir d’un Stream, il est plus efficace d’utiliser une mémoire tampon qui est de la même taille que la mémoire tampon interne du flux.

Avertissement

Lorsque vous compilez un ensemble de caractères avec un paramètre culturel particulier et récupérez ces mêmes caractères avec un paramètre culturel différent, les caractères peuvent ne pas être interprétables et peuvent provoquer la levée d’une exception.

Pour obtenir la liste des tâches d’E/S courantes, consultez Tâches d’E/S courantes.

Voir aussi

S’applique à

StreamReader(Stream, Encoding, Boolean)

Source:
StreamReader.cs
Source:
StreamReader.cs
Source:
StreamReader.cs
Source:
StreamReader.cs
Source:
StreamReader.cs

Initialise une nouvelle instance de la StreamReader classe pour le flux spécifié, avec l’option d’encodage de caractères et de détection de marque d’octet spécifiée.

public:
 StreamReader(System::IO::Stream ^ stream, System::Text::Encoding ^ encoding, bool detectEncodingFromByteOrderMarks);
public StreamReader(System.IO.Stream stream, System.Text.Encoding encoding, bool detectEncodingFromByteOrderMarks);
public StreamReader(System.IO.Stream stream, System.Text.Encoding? encoding, bool detectEncodingFromByteOrderMarks);
new System.IO.StreamReader : System.IO.Stream * System.Text.Encoding * bool -> System.IO.StreamReader
Public Sub New (stream As Stream, encoding As Encoding, detectEncodingFromByteOrderMarks As Boolean)

Paramètres

stream
Stream

Flux à lire.

encoding
Encoding

Encodage de caractères à utiliser.

detectEncodingFromByteOrderMarks
Boolean

Indique s’il faut rechercher des marques d’ordre d’octet au début du fichier.

Exceptions

stream ne prend pas en charge la lecture.

stream ou encoding est null.

Exemples

L’exemple de code suivant illustre ce StreamReader constructeur.

private void getNewStreamReader()
{
    //Get a new StreamReader in ASCII format from a
    //file using a buffer and byte order mark detection
    StreamReader srAsciiFromFileFalse512 =
        new StreamReader("C:\\Temp\\Test.txt",
        System.Text.Encoding.ASCII, false, 512);
    //Get a new StreamReader in ASCII format from a
    //file with byte order mark detection = false
    StreamReader srAsciiFromFileFalse =
        new StreamReader("C:\\Temp\\Test.txt",
        System.Text.Encoding.ASCII, false);
    //Get a new StreamReader in ASCII format from a file
    StreamReader srAsciiFromFile =
        new StreamReader("C:\\Temp\\Test.txt",
        System.Text.Encoding.ASCII);
    //Get a new StreamReader from a
    //file with byte order mark detection = false
    StreamReader srFromFileFalse =
        new StreamReader("C:\\Temp\\Test.txt", false);
    //Get a new StreamReader from a file
    StreamReader srFromFile =
        new StreamReader("C:\\Temp\\Test.txt");
    //Get a new StreamReader in ASCII format from a
    //FileStream with byte order mark detection = false and a buffer
    StreamReader srAsciiFromStreamFalse512 = new StreamReader(
        (System.IO.Stream)File.OpenRead("C:\\Temp\\Test.txt"),
        System.Text.Encoding.ASCII, false, 512);
    //Get a new StreamReader in ASCII format from a
    //FileStream with byte order mark detection = false
    StreamReader srAsciiFromStreamFalse = new StreamReader(
        (System.IO.Stream)File.OpenRead("C:\\Temp\\Test.txt"),
        System.Text.Encoding.ASCII, false);
    //Get a new StreamReader in ASCII format from a FileStream
    StreamReader srAsciiFromStream = new StreamReader(
        (System.IO.Stream)File.OpenRead("C:\\Temp\\Test.txt"),
        System.Text.Encoding.ASCII);
    //Get a new StreamReader from a
    //FileStream with byte order mark detection = false
    StreamReader srFromStreamFalse = new StreamReader(
        (System.IO.Stream)File.OpenRead("C:\\Temp\\Test.txt"),
        false);
    //Get a new StreamReader from a FileStream
    StreamReader srFromStream = new StreamReader(
        (System.IO.Stream)File.OpenRead("C:\\Temp\\Test.txt"));
}
Private Sub getNewStreamReader()
    Dim S As Stream = File.OpenRead("C:\Temp\Test.txt")
    'Get a new StreamReader in ASCII format from a
    'file using a buffer and byte order mark detection
    Dim SrAsciiFromFileFalse512 As StreamReader = New StreamReader("C:\Temp\Test.txt", _
        System.Text.Encoding.ASCII, False, 512)
    'Get a new StreamReader in ASCII format from a
    'file with byte order mark detection = false
    Dim SrAsciiFromFileFalse As StreamReader = New StreamReader("C:\Temp\Test.txt", _
        System.Text.Encoding.ASCII, False)
    'Get a new StreamReader in ASCII format from a file 
    Dim SrAsciiFromFile As StreamReader = New StreamReader("C:\Temp\Test.txt", _
        System.Text.Encoding.ASCII)
    'Get a new StreamReader from a
    'file with byte order mark detection = false        
    Dim SrFromFileFalse As StreamReader = New StreamReader("C:\Temp\Test.txt", False)
    'Get a new StreamReader from a file
    Dim SrFromFile As StreamReader = New StreamReader("C:\Temp\Test.txt")
    'Get a new StreamReader in ASCII format from a
    'FileStream with byte order mark detection = false and a buffer
    Dim SrAsciiFromStreamFalse512 As StreamReader = New StreamReader(S, _
        System.Text.Encoding.ASCII, False, 512)
    'Get a new StreamReader in ASCII format from a
    'FileStream with byte order mark detection = false
    Dim SrAsciiFromStreamFalse = New StreamReader(S, _
        System.Text.Encoding.ASCII, False)
    'Get a new StreamReader in ASCII format from a FileStream
    Dim SrAsciiFromStream As StreamReader = New StreamReader(S, _
        System.Text.Encoding.ASCII)
    'Get a new StreamReader from a
    'FileStream with byte order mark detection = false
    Dim SrFromStreamFalse As StreamReader = New StreamReader(S, False)
    'Get a new StreamReader from a FileStream
    Dim SrFromStream As StreamReader = New StreamReader(S)

End Sub

Remarques

Ce constructeur initialise l’encodage tel que spécifié par le encoding paramètre, la BaseStream propriété à l’aide du stream paramètre et la taille de mémoire tampon interne à 1024 octets.

Le detectEncodingFromByteOrderMarks paramètre détecte l’encodage en examinant les quatre premiers octets du flux. Il reconnaît automatiquement UTF-8, little-endian UTF-16, big-endian UTF-16, little-endian UTF-32 et big-endian UTF-32 text si le fichier commence par les marques d’ordre d’octet appropriées. Sinon, l’encodage fourni par l’utilisateur est utilisé. Pour plus d’informations, consultez la Encoding.GetPreamble méthode.

L’objet StreamReader appelle Dispose() l’objet fourni Stream lorsqu’il StreamReader.Dispose est appelé.

Avertissement

Lorsque vous compilez un ensemble de caractères avec un paramètre culturel particulier et récupérez ces mêmes caractères avec un paramètre culturel différent, les caractères peuvent ne pas être interprétables et peuvent provoquer la levée d’une exception.

Pour obtenir la liste des tâches d’E/S courantes, consultez Tâches d’E/S courantes.

Voir aussi

S’applique à

StreamReader(String, Encoding, Boolean)

Source:
StreamReader.cs
Source:
StreamReader.cs
Source:
StreamReader.cs
Source:
StreamReader.cs
Source:
StreamReader.cs

Initialise une nouvelle instance de la StreamReader classe pour le nom de fichier spécifié, avec l’option d’encodage de caractères et de détection de marque d’octet spécifiée.

public:
 StreamReader(System::String ^ path, System::Text::Encoding ^ encoding, bool detectEncodingFromByteOrderMarks);
public StreamReader(string path, System.Text.Encoding? encoding, bool detectEncodingFromByteOrderMarks);
public StreamReader(string path, System.Text.Encoding encoding, bool detectEncodingFromByteOrderMarks);
new System.IO.StreamReader : string * System.Text.Encoding * bool -> System.IO.StreamReader
Public Sub New (path As String, encoding As Encoding, detectEncodingFromByteOrderMarks As Boolean)

Paramètres

path
String

Chemin d’accès complet du fichier à lire.

encoding
Encoding

Encodage de caractères à utiliser.

detectEncodingFromByteOrderMarks
Boolean

Indique s’il faut rechercher des marques d’ordre d’octet au début du fichier.

Exceptions

path est une chaîne vide («  »).

path ou encoding est null.

Le fichier est introuvable.

Le chemin spécifié n’est pas valide, par exemple sur un lecteur non mappé.

path inclut une syntaxe incorrecte ou non valide pour le nom de fichier, le nom du répertoire ou l’étiquette de volume.

Exemples

L’exemple de code suivant illustre ce StreamReader constructeur.

private void getNewStreamReader()
{
    //Get a new StreamReader in ASCII format from a
    //file using a buffer and byte order mark detection
    StreamReader srAsciiFromFileFalse512 =
        new StreamReader("C:\\Temp\\Test.txt",
        System.Text.Encoding.ASCII, false, 512);
    //Get a new StreamReader in ASCII format from a
    //file with byte order mark detection = false
    StreamReader srAsciiFromFileFalse =
        new StreamReader("C:\\Temp\\Test.txt",
        System.Text.Encoding.ASCII, false);
    //Get a new StreamReader in ASCII format from a file
    StreamReader srAsciiFromFile =
        new StreamReader("C:\\Temp\\Test.txt",
        System.Text.Encoding.ASCII);
    //Get a new StreamReader from a
    //file with byte order mark detection = false
    StreamReader srFromFileFalse =
        new StreamReader("C:\\Temp\\Test.txt", false);
    //Get a new StreamReader from a file
    StreamReader srFromFile =
        new StreamReader("C:\\Temp\\Test.txt");
    //Get a new StreamReader in ASCII format from a
    //FileStream with byte order mark detection = false and a buffer
    StreamReader srAsciiFromStreamFalse512 = new StreamReader(
        (System.IO.Stream)File.OpenRead("C:\\Temp\\Test.txt"),
        System.Text.Encoding.ASCII, false, 512);
    //Get a new StreamReader in ASCII format from a
    //FileStream with byte order mark detection = false
    StreamReader srAsciiFromStreamFalse = new StreamReader(
        (System.IO.Stream)File.OpenRead("C:\\Temp\\Test.txt"),
        System.Text.Encoding.ASCII, false);
    //Get a new StreamReader in ASCII format from a FileStream
    StreamReader srAsciiFromStream = new StreamReader(
        (System.IO.Stream)File.OpenRead("C:\\Temp\\Test.txt"),
        System.Text.Encoding.ASCII);
    //Get a new StreamReader from a
    //FileStream with byte order mark detection = false
    StreamReader srFromStreamFalse = new StreamReader(
        (System.IO.Stream)File.OpenRead("C:\\Temp\\Test.txt"),
        false);
    //Get a new StreamReader from a FileStream
    StreamReader srFromStream = new StreamReader(
        (System.IO.Stream)File.OpenRead("C:\\Temp\\Test.txt"));
}
Private Sub getNewStreamReader()
    Dim S As Stream = File.OpenRead("C:\Temp\Test.txt")
    'Get a new StreamReader in ASCII format from a
    'file using a buffer and byte order mark detection
    Dim SrAsciiFromFileFalse512 As StreamReader = New StreamReader("C:\Temp\Test.txt", _
        System.Text.Encoding.ASCII, False, 512)
    'Get a new StreamReader in ASCII format from a
    'file with byte order mark detection = false
    Dim SrAsciiFromFileFalse As StreamReader = New StreamReader("C:\Temp\Test.txt", _
        System.Text.Encoding.ASCII, False)
    'Get a new StreamReader in ASCII format from a file 
    Dim SrAsciiFromFile As StreamReader = New StreamReader("C:\Temp\Test.txt", _
        System.Text.Encoding.ASCII)
    'Get a new StreamReader from a
    'file with byte order mark detection = false        
    Dim SrFromFileFalse As StreamReader = New StreamReader("C:\Temp\Test.txt", False)
    'Get a new StreamReader from a file
    Dim SrFromFile As StreamReader = New StreamReader("C:\Temp\Test.txt")
    'Get a new StreamReader in ASCII format from a
    'FileStream with byte order mark detection = false and a buffer
    Dim SrAsciiFromStreamFalse512 As StreamReader = New StreamReader(S, _
        System.Text.Encoding.ASCII, False, 512)
    'Get a new StreamReader in ASCII format from a
    'FileStream with byte order mark detection = false
    Dim SrAsciiFromStreamFalse = New StreamReader(S, _
        System.Text.Encoding.ASCII, False)
    'Get a new StreamReader in ASCII format from a FileStream
    Dim SrAsciiFromStream As StreamReader = New StreamReader(S, _
        System.Text.Encoding.ASCII)
    'Get a new StreamReader from a
    'FileStream with byte order mark detection = false
    Dim SrFromStreamFalse As StreamReader = New StreamReader(S, False)
    'Get a new StreamReader from a FileStream
    Dim SrFromStream As StreamReader = New StreamReader(S)

End Sub

Remarques

Ce constructeur initialise l’encodage tel que spécifié par le encoding paramètre et la taille de la mémoire tampon interne à 1024 octets.

Le detectEncodingFromByteOrderMarks paramètre détecte l’encodage en examinant les quatre premiers octets du flux. Il reconnaît automatiquement UTF-8, little-endian UTF-16, big-endian UTF-16, little-endian UTF-32 et big-endian UTF-32 text si le fichier commence par les marques d’ordre d’octet appropriées. Sinon, l’encodage fourni par l’utilisateur est utilisé. Pour plus d’informations, consultez la Encoding.GetPreamble méthode.

Le path paramètre peut être un nom de fichier, y compris un fichier sur un partage UNC (Universal Naming Convention).

Le path paramètre n’est pas obligatoire pour être un fichier stocké sur le disque ; il peut s’agir d’une partie d’un système qui prend en charge l’accès à l’aide de flux.

Avertissement

Lorsque vous compilez un ensemble de caractères avec un paramètre culturel particulier et récupérez ces mêmes caractères avec un paramètre culturel différent, les caractères peuvent ne pas être interprétables et peuvent provoquer la levée d’une exception.

Pour obtenir la liste des tâches d’E/S courantes, consultez Tâches d’E/S courantes.

Voir aussi

S’applique à

StreamReader(String, FileStreamOptions)

Source:
StreamReader.cs
Source:
StreamReader.cs
Source:
StreamReader.cs
Source:
StreamReader.cs
Source:
StreamReader.cs

Initialise une nouvelle instance de la StreamReader classe pour le chemin d’accès de fichier spécifié, à l’aide de l’encodage par défaut, en activant la détection des marques d’ordre d’octet au début du fichier et configurées avec l’objet spécifié FileStreamOptions .

public:
 StreamReader(System::String ^ path, System::IO::FileStreamOptions ^ options);
public StreamReader(string path, System.IO.FileStreamOptions options);
new System.IO.StreamReader : string * System.IO.FileStreamOptions -> System.IO.StreamReader
Public Sub New (path As String, options As FileStreamOptions)

Paramètres

path
String

Chemin d’accès complet du fichier à lire.

options
FileStreamOptions

Objet qui spécifie les options de configuration pour le sous-jacent FileStream.

Exceptions

path n’est pas lisible.

- ou -

      <code data-dev-comment-type="paramref">path</code> is an empty string ("").

path ou options est null.

Le fichier est introuvable.

Le chemin spécifié n’est pas valide, par exemple sur un lecteur non mappé.

path inclut une syntaxe incorrecte ou non valide pour le nom de fichier, le nom du répertoire ou l’étiquette de volume.

Voir aussi

S’applique à

StreamReader(String, Boolean)

Source:
StreamReader.cs
Source:
StreamReader.cs
Source:
StreamReader.cs
Source:
StreamReader.cs
Source:
StreamReader.cs

Initialise une nouvelle instance de la StreamReader classe pour le nom de fichier spécifié, avec l’option de détection de marque d’ordre d’octet spécifiée.

public:
 StreamReader(System::String ^ path, bool detectEncodingFromByteOrderMarks);
public StreamReader(string path, bool detectEncodingFromByteOrderMarks);
new System.IO.StreamReader : string * bool -> System.IO.StreamReader
Public Sub New (path As String, detectEncodingFromByteOrderMarks As Boolean)

Paramètres

path
String

Chemin d’accès complet du fichier à lire.

detectEncodingFromByteOrderMarks
Boolean

Indique s’il faut rechercher des marques d’ordre d’octet au début du fichier.

Exceptions

path est une chaîne vide («  »).

path a la valeur null.

Le fichier est introuvable.

Le chemin spécifié n’est pas valide, par exemple sur un lecteur non mappé.

path inclut une syntaxe incorrecte ou non valide pour le nom de fichier, le nom du répertoire ou l’étiquette de volume.

Exemples

L’exemple de code suivant illustre ce StreamReader constructeur.

private void getNewStreamReader()
{
    //Get a new StreamReader in ASCII format from a
    //file using a buffer and byte order mark detection
    StreamReader srAsciiFromFileFalse512 =
        new StreamReader("C:\\Temp\\Test.txt",
        System.Text.Encoding.ASCII, false, 512);
    //Get a new StreamReader in ASCII format from a
    //file with byte order mark detection = false
    StreamReader srAsciiFromFileFalse =
        new StreamReader("C:\\Temp\\Test.txt",
        System.Text.Encoding.ASCII, false);
    //Get a new StreamReader in ASCII format from a file
    StreamReader srAsciiFromFile =
        new StreamReader("C:\\Temp\\Test.txt",
        System.Text.Encoding.ASCII);
    //Get a new StreamReader from a
    //file with byte order mark detection = false
    StreamReader srFromFileFalse =
        new StreamReader("C:\\Temp\\Test.txt", false);
    //Get a new StreamReader from a file
    StreamReader srFromFile =
        new StreamReader("C:\\Temp\\Test.txt");
    //Get a new StreamReader in ASCII format from a
    //FileStream with byte order mark detection = false and a buffer
    StreamReader srAsciiFromStreamFalse512 = new StreamReader(
        (System.IO.Stream)File.OpenRead("C:\\Temp\\Test.txt"),
        System.Text.Encoding.ASCII, false, 512);
    //Get a new StreamReader in ASCII format from a
    //FileStream with byte order mark detection = false
    StreamReader srAsciiFromStreamFalse = new StreamReader(
        (System.IO.Stream)File.OpenRead("C:\\Temp\\Test.txt"),
        System.Text.Encoding.ASCII, false);
    //Get a new StreamReader in ASCII format from a FileStream
    StreamReader srAsciiFromStream = new StreamReader(
        (System.IO.Stream)File.OpenRead("C:\\Temp\\Test.txt"),
        System.Text.Encoding.ASCII);
    //Get a new StreamReader from a
    //FileStream with byte order mark detection = false
    StreamReader srFromStreamFalse = new StreamReader(
        (System.IO.Stream)File.OpenRead("C:\\Temp\\Test.txt"),
        false);
    //Get a new StreamReader from a FileStream
    StreamReader srFromStream = new StreamReader(
        (System.IO.Stream)File.OpenRead("C:\\Temp\\Test.txt"));
}
Private Sub getNewStreamReader()
    Dim S As Stream = File.OpenRead("C:\Temp\Test.txt")
    'Get a new StreamReader in ASCII format from a
    'file using a buffer and byte order mark detection
    Dim SrAsciiFromFileFalse512 As StreamReader = New StreamReader("C:\Temp\Test.txt", _
        System.Text.Encoding.ASCII, False, 512)
    'Get a new StreamReader in ASCII format from a
    'file with byte order mark detection = false
    Dim SrAsciiFromFileFalse As StreamReader = New StreamReader("C:\Temp\Test.txt", _
        System.Text.Encoding.ASCII, False)
    'Get a new StreamReader in ASCII format from a file 
    Dim SrAsciiFromFile As StreamReader = New StreamReader("C:\Temp\Test.txt", _
        System.Text.Encoding.ASCII)
    'Get a new StreamReader from a
    'file with byte order mark detection = false        
    Dim SrFromFileFalse As StreamReader = New StreamReader("C:\Temp\Test.txt", False)
    'Get a new StreamReader from a file
    Dim SrFromFile As StreamReader = New StreamReader("C:\Temp\Test.txt")
    'Get a new StreamReader in ASCII format from a
    'FileStream with byte order mark detection = false and a buffer
    Dim SrAsciiFromStreamFalse512 As StreamReader = New StreamReader(S, _
        System.Text.Encoding.ASCII, False, 512)
    'Get a new StreamReader in ASCII format from a
    'FileStream with byte order mark detection = false
    Dim SrAsciiFromStreamFalse = New StreamReader(S, _
        System.Text.Encoding.ASCII, False)
    'Get a new StreamReader in ASCII format from a FileStream
    Dim SrAsciiFromStream As StreamReader = New StreamReader(S, _
        System.Text.Encoding.ASCII)
    'Get a new StreamReader from a
    'FileStream with byte order mark detection = false
    Dim SrFromStreamFalse As StreamReader = New StreamReader(S, False)
    'Get a new StreamReader from a FileStream
    Dim SrFromStream As StreamReader = New StreamReader(S)

End Sub

Remarques

Ce constructeur initialise l’encodage sur UTF8Encoding, la BaseStream propriété à l’aide du stream paramètre et la taille de mémoire tampon interne à 1024 octets.

Le path paramètre peut être un nom de fichier, y compris un fichier sur un partage UNC (Universal Naming Convention).

Le path paramètre n’est pas obligatoire pour être un fichier stocké sur le disque ; il peut s’agir d’une partie d’un système qui prend en charge l’accès à l’aide de flux.

Le detectEncodingFromByteOrderMarks paramètre détecte l’encodage en examinant les quatre premiers octets du flux. Il reconnaît automatiquement UTF-8, little-endian UTF-16, big-endian UTF-16, little-endian UTF-32 et big-endian UTF-32 text si le fichier commence par les marques d’ordre d’octet appropriées. Sinon, il UTF8Encoding est utilisé. Pour plus d’informations, consultez la Encoding.GetPreamble méthode.

Pour obtenir la liste des tâches d’E/S courantes, consultez Tâches d’E/S courantes.

Voir aussi

S’applique à

StreamReader(Stream, Encoding)

Source:
StreamReader.cs
Source:
StreamReader.cs
Source:
StreamReader.cs
Source:
StreamReader.cs
Source:
StreamReader.cs

Initialise une nouvelle instance de la StreamReader classe pour le flux spécifié, avec l’encodage de caractères spécifié.

public:
 StreamReader(System::IO::Stream ^ stream, System::Text::Encoding ^ encoding);
public StreamReader(System.IO.Stream stream, System.Text.Encoding encoding);
public StreamReader(System.IO.Stream stream, System.Text.Encoding? encoding);
new System.IO.StreamReader : System.IO.Stream * System.Text.Encoding -> System.IO.StreamReader
Public Sub New (stream As Stream, encoding As Encoding)

Paramètres

stream
Stream

Flux à lire.

encoding
Encoding

Encodage de caractères à utiliser.

Exceptions

stream ne prend pas en charge la lecture.

stream ou encoding est null.

Exemples

L’exemple de code suivant illustre ce StreamReader constructeur.

private void getNewStreamReader()
{
    //Get a new StreamReader in ASCII format from a
    //file using a buffer and byte order mark detection
    StreamReader srAsciiFromFileFalse512 =
        new StreamReader("C:\\Temp\\Test.txt",
        System.Text.Encoding.ASCII, false, 512);
    //Get a new StreamReader in ASCII format from a
    //file with byte order mark detection = false
    StreamReader srAsciiFromFileFalse =
        new StreamReader("C:\\Temp\\Test.txt",
        System.Text.Encoding.ASCII, false);
    //Get a new StreamReader in ASCII format from a file
    StreamReader srAsciiFromFile =
        new StreamReader("C:\\Temp\\Test.txt",
        System.Text.Encoding.ASCII);
    //Get a new StreamReader from a
    //file with byte order mark detection = false
    StreamReader srFromFileFalse =
        new StreamReader("C:\\Temp\\Test.txt", false);
    //Get a new StreamReader from a file
    StreamReader srFromFile =
        new StreamReader("C:\\Temp\\Test.txt");
    //Get a new StreamReader in ASCII format from a
    //FileStream with byte order mark detection = false and a buffer
    StreamReader srAsciiFromStreamFalse512 = new StreamReader(
        (System.IO.Stream)File.OpenRead("C:\\Temp\\Test.txt"),
        System.Text.Encoding.ASCII, false, 512);
    //Get a new StreamReader in ASCII format from a
    //FileStream with byte order mark detection = false
    StreamReader srAsciiFromStreamFalse = new StreamReader(
        (System.IO.Stream)File.OpenRead("C:\\Temp\\Test.txt"),
        System.Text.Encoding.ASCII, false);
    //Get a new StreamReader in ASCII format from a FileStream
    StreamReader srAsciiFromStream = new StreamReader(
        (System.IO.Stream)File.OpenRead("C:\\Temp\\Test.txt"),
        System.Text.Encoding.ASCII);
    //Get a new StreamReader from a
    //FileStream with byte order mark detection = false
    StreamReader srFromStreamFalse = new StreamReader(
        (System.IO.Stream)File.OpenRead("C:\\Temp\\Test.txt"),
        false);
    //Get a new StreamReader from a FileStream
    StreamReader srFromStream = new StreamReader(
        (System.IO.Stream)File.OpenRead("C:\\Temp\\Test.txt"));
}
Private Sub getNewStreamReader()
    Dim S As Stream = File.OpenRead("C:\Temp\Test.txt")
    'Get a new StreamReader in ASCII format from a
    'file using a buffer and byte order mark detection
    Dim SrAsciiFromFileFalse512 As StreamReader = New StreamReader("C:\Temp\Test.txt", _
        System.Text.Encoding.ASCII, False, 512)
    'Get a new StreamReader in ASCII format from a
    'file with byte order mark detection = false
    Dim SrAsciiFromFileFalse As StreamReader = New StreamReader("C:\Temp\Test.txt", _
        System.Text.Encoding.ASCII, False)
    'Get a new StreamReader in ASCII format from a file 
    Dim SrAsciiFromFile As StreamReader = New StreamReader("C:\Temp\Test.txt", _
        System.Text.Encoding.ASCII)
    'Get a new StreamReader from a
    'file with byte order mark detection = false        
    Dim SrFromFileFalse As StreamReader = New StreamReader("C:\Temp\Test.txt", False)
    'Get a new StreamReader from a file
    Dim SrFromFile As StreamReader = New StreamReader("C:\Temp\Test.txt")
    'Get a new StreamReader in ASCII format from a
    'FileStream with byte order mark detection = false and a buffer
    Dim SrAsciiFromStreamFalse512 As StreamReader = New StreamReader(S, _
        System.Text.Encoding.ASCII, False, 512)
    'Get a new StreamReader in ASCII format from a
    'FileStream with byte order mark detection = false
    Dim SrAsciiFromStreamFalse = New StreamReader(S, _
        System.Text.Encoding.ASCII, False)
    'Get a new StreamReader in ASCII format from a FileStream
    Dim SrAsciiFromStream As StreamReader = New StreamReader(S, _
        System.Text.Encoding.ASCII)
    'Get a new StreamReader from a
    'FileStream with byte order mark detection = false
    Dim SrFromStreamFalse As StreamReader = New StreamReader(S, False)
    'Get a new StreamReader from a FileStream
    Dim SrFromStream As StreamReader = New StreamReader(S)

End Sub

Remarques

L’encodage de caractères est défini par le encoding paramètre et la taille de la mémoire tampon est définie sur 1 024 octets. L’objet StreamReader tente de détecter l’encodage en examinant les quatre premiers octets du flux. Il reconnaît automatiquement UTF-8, little-endian UTF-16, big-endian UTF-16, little-endian UTF-32 et big-endian UTF-32 text si le fichier commence par les marques d’ordre d’octet appropriées. Sinon, l’encodage fourni par l’utilisateur est utilisé. Pour plus d’informations, consultez la Encoding.GetPreamble méthode.

L’objet StreamReader appelle Dispose() l’objet fourni Stream lorsqu’il StreamReader.Dispose est appelé.

Avertissement

Lorsque vous compilez un ensemble de caractères avec un paramètre culturel particulier et récupérez ces mêmes caractères avec un paramètre culturel différent, les caractères peuvent ne pas être interprétables et peuvent provoquer la levée d’une exception.

Pour obtenir la liste des tâches d’E/S courantes, consultez Tâches d’E/S courantes.

Voir aussi

S’applique à

StreamReader(Stream, Boolean)

Source:
StreamReader.cs
Source:
StreamReader.cs
Source:
StreamReader.cs
Source:
StreamReader.cs
Source:
StreamReader.cs

Initialise une nouvelle instance de la StreamReader classe pour le flux spécifié, avec l’option de détection de marque d’ordre d’octet spécifiée.

public:
 StreamReader(System::IO::Stream ^ stream, bool detectEncodingFromByteOrderMarks);
public StreamReader(System.IO.Stream stream, bool detectEncodingFromByteOrderMarks);
new System.IO.StreamReader : System.IO.Stream * bool -> System.IO.StreamReader
Public Sub New (stream As Stream, detectEncodingFromByteOrderMarks As Boolean)

Paramètres

stream
Stream

Flux à lire.

detectEncodingFromByteOrderMarks
Boolean

Indique s’il faut rechercher des marques d’ordre d’octet au début du fichier.

Exceptions

stream ne prend pas en charge la lecture.

stream a la valeur null.

Exemples

L’exemple de code suivant illustre ce StreamReader constructeur.

private void getNewStreamReader()
{
    //Get a new StreamReader in ASCII format from a
    //file using a buffer and byte order mark detection
    StreamReader srAsciiFromFileFalse512 =
        new StreamReader("C:\\Temp\\Test.txt",
        System.Text.Encoding.ASCII, false, 512);
    //Get a new StreamReader in ASCII format from a
    //file with byte order mark detection = false
    StreamReader srAsciiFromFileFalse =
        new StreamReader("C:\\Temp\\Test.txt",
        System.Text.Encoding.ASCII, false);
    //Get a new StreamReader in ASCII format from a file
    StreamReader srAsciiFromFile =
        new StreamReader("C:\\Temp\\Test.txt",
        System.Text.Encoding.ASCII);
    //Get a new StreamReader from a
    //file with byte order mark detection = false
    StreamReader srFromFileFalse =
        new StreamReader("C:\\Temp\\Test.txt", false);
    //Get a new StreamReader from a file
    StreamReader srFromFile =
        new StreamReader("C:\\Temp\\Test.txt");
    //Get a new StreamReader in ASCII format from a
    //FileStream with byte order mark detection = false and a buffer
    StreamReader srAsciiFromStreamFalse512 = new StreamReader(
        (System.IO.Stream)File.OpenRead("C:\\Temp\\Test.txt"),
        System.Text.Encoding.ASCII, false, 512);
    //Get a new StreamReader in ASCII format from a
    //FileStream with byte order mark detection = false
    StreamReader srAsciiFromStreamFalse = new StreamReader(
        (System.IO.Stream)File.OpenRead("C:\\Temp\\Test.txt"),
        System.Text.Encoding.ASCII, false);
    //Get a new StreamReader in ASCII format from a FileStream
    StreamReader srAsciiFromStream = new StreamReader(
        (System.IO.Stream)File.OpenRead("C:\\Temp\\Test.txt"),
        System.Text.Encoding.ASCII);
    //Get a new StreamReader from a
    //FileStream with byte order mark detection = false
    StreamReader srFromStreamFalse = new StreamReader(
        (System.IO.Stream)File.OpenRead("C:\\Temp\\Test.txt"),
        false);
    //Get a new StreamReader from a FileStream
    StreamReader srFromStream = new StreamReader(
        (System.IO.Stream)File.OpenRead("C:\\Temp\\Test.txt"));
}
Private Sub getNewStreamReader()
    Dim S As Stream = File.OpenRead("C:\Temp\Test.txt")
    'Get a new StreamReader in ASCII format from a
    'file using a buffer and byte order mark detection
    Dim SrAsciiFromFileFalse512 As StreamReader = New StreamReader("C:\Temp\Test.txt", _
        System.Text.Encoding.ASCII, False, 512)
    'Get a new StreamReader in ASCII format from a
    'file with byte order mark detection = false
    Dim SrAsciiFromFileFalse As StreamReader = New StreamReader("C:\Temp\Test.txt", _
        System.Text.Encoding.ASCII, False)
    'Get a new StreamReader in ASCII format from a file 
    Dim SrAsciiFromFile As StreamReader = New StreamReader("C:\Temp\Test.txt", _
        System.Text.Encoding.ASCII)
    'Get a new StreamReader from a
    'file with byte order mark detection = false        
    Dim SrFromFileFalse As StreamReader = New StreamReader("C:\Temp\Test.txt", False)
    'Get a new StreamReader from a file
    Dim SrFromFile As StreamReader = New StreamReader("C:\Temp\Test.txt")
    'Get a new StreamReader in ASCII format from a
    'FileStream with byte order mark detection = false and a buffer
    Dim SrAsciiFromStreamFalse512 As StreamReader = New StreamReader(S, _
        System.Text.Encoding.ASCII, False, 512)
    'Get a new StreamReader in ASCII format from a
    'FileStream with byte order mark detection = false
    Dim SrAsciiFromStreamFalse = New StreamReader(S, _
        System.Text.Encoding.ASCII, False)
    'Get a new StreamReader in ASCII format from a FileStream
    Dim SrAsciiFromStream As StreamReader = New StreamReader(S, _
        System.Text.Encoding.ASCII)
    'Get a new StreamReader from a
    'FileStream with byte order mark detection = false
    Dim SrFromStreamFalse As StreamReader = New StreamReader(S, False)
    'Get a new StreamReader from a FileStream
    Dim SrFromStream As StreamReader = New StreamReader(S)

End Sub

Remarques

Ce constructeur initialise l’encodage sur UTF8Encoding, la BaseStream propriété à l’aide du stream paramètre et la taille de mémoire tampon interne à 1024 octets.

Le detectEncodingFromByteOrderMarks paramètre détecte l’encodage en examinant les quatre premiers octets du flux. Il reconnaît automatiquement UTF-8, little-endian UTF-16, big-endian UTF-16, little-endian UTF-32 et big-endian UTF-32 text si le fichier commence par les marques d’ordre d’octet appropriées. Pour plus d’informations, consultez la Encoding.GetPreamble méthode.

L’objet StreamReader appelle Dispose() l’objet fourni Stream lorsqu’il StreamReader.Dispose est appelé.

Pour obtenir la liste des tâches d’E/S courantes, consultez Tâches d’E/S courantes.

Voir aussi

S’applique à

StreamReader(String)

Source:
StreamReader.cs
Source:
StreamReader.cs
Source:
StreamReader.cs
Source:
StreamReader.cs
Source:
StreamReader.cs

Initialise une nouvelle instance de la StreamReader classe pour le nom de fichier spécifié.

public:
 StreamReader(System::String ^ path);
public StreamReader(string path);
new System.IO.StreamReader : string -> System.IO.StreamReader
Public Sub New (path As String)

Paramètres

path
String

Chemin d’accès complet du fichier à lire.

Exceptions

path est une chaîne vide («  »).

path a la valeur null.

Le fichier est introuvable.

Le chemin spécifié n’est pas valide, par exemple sur un lecteur non mappé.

path inclut une syntaxe incorrecte ou non valide pour le nom de fichier, le nom du répertoire ou l’étiquette de volume.

Exemples

L’exemple de code suivant illustre ce StreamReader constructeur.

using System;
using System.IO;

class Test
{
    
    public static void Main()
    {
        string path = @"c:\temp\MyTest.txt";

        try
        {
            if (File.Exists(path))
            {
                File.Delete(path);
            }

            using (StreamWriter sw = new StreamWriter(path))
            {
                sw.WriteLine("This");
                sw.WriteLine("is some text");
                sw.WriteLine("to test");
                sw.WriteLine("Reading");
            }

            using (StreamReader sr = new StreamReader(path))
            {
                while (sr.Peek() >= 0)
                {
                    Console.WriteLine(sr.ReadLine());
                }
            }
        }
        catch (Exception e)
        {
            Console.WriteLine("The process failed: {0}", e.ToString());
        }
    }
}
Imports System.IO

Public Class Test

    Public Shared Sub Main()
        Dim path As String = "c:\temp\MyTest.txt"

        Try
            If File.Exists(path) Then
                File.Delete(path)
            End If

            Dim sw As StreamWriter = New StreamWriter(path)
            sw.WriteLine("This")
            sw.WriteLine("is some text")
            sw.WriteLine("to test")
            sw.WriteLine("Reading")
            sw.Close()

            Dim sr As StreamReader = New StreamReader(path)

            Do While sr.Peek() >= 0
                Console.WriteLine(sr.ReadLine())
            Loop
            sr.Close()
        Catch e As Exception
            Console.WriteLine("The process failed: {0}", e.ToString())
        End Try
    End Sub
End Class

Remarques

Le chemin d’accès complet du fichier est spécifié par le path paramètre. Ce constructeur initialise l’encodage et UTF8Encoding la taille de la mémoire tampon sur 1024 octets.

Le path paramètre peut être un nom de fichier, y compris un fichier sur un partage UNC (Universal Naming Convention).

Le path paramètre n’est pas obligatoire pour être un fichier stocké sur le disque ; il peut s’agir d’une partie d’un système qui prend en charge l’accès à l’aide de flux.

Avertissement

Lorsque vous compilez un ensemble de caractères avec un paramètre culturel particulier et récupérez ces mêmes caractères avec un paramètre culturel différent, les caractères peuvent ne pas être interprétables et peuvent provoquer la levée d’une exception.

Pour obtenir la liste des tâches d’E/S courantes, consultez Tâches d’E/S courantes.

Voir aussi

S’applique à

StreamReader(String, Encoding)

Source:
StreamReader.cs
Source:
StreamReader.cs
Source:
StreamReader.cs
Source:
StreamReader.cs
Source:
StreamReader.cs

Initialise une nouvelle instance de la StreamReader classe pour le nom de fichier spécifié, avec l’encodage de caractères spécifié.

public:
 StreamReader(System::String ^ path, System::Text::Encoding ^ encoding);
public StreamReader(string path, System.Text.Encoding? encoding);
public StreamReader(string path, System.Text.Encoding encoding);
new System.IO.StreamReader : string * System.Text.Encoding -> System.IO.StreamReader
Public Sub New (path As String, encoding As Encoding)

Paramètres

path
String

Chemin d’accès complet du fichier à lire.

encoding
Encoding

Encodage de caractères à utiliser.

Exceptions

path est une chaîne vide («  »).

path ou encoding est null.

Le fichier est introuvable.

Le chemin spécifié n’est pas valide, par exemple sur un lecteur non mappé.

path inclut une syntaxe incorrecte ou non valide pour le nom de fichier, le nom du répertoire ou l’étiquette de volume.

Exemples

L’exemple de code suivant illustre ce StreamReader constructeur.

private void getNewStreamReader()
{
    //Get a new StreamReader in ASCII format from a
    //file using a buffer and byte order mark detection
    StreamReader srAsciiFromFileFalse512 =
        new StreamReader("C:\\Temp\\Test.txt",
        System.Text.Encoding.ASCII, false, 512);
    //Get a new StreamReader in ASCII format from a
    //file with byte order mark detection = false
    StreamReader srAsciiFromFileFalse =
        new StreamReader("C:\\Temp\\Test.txt",
        System.Text.Encoding.ASCII, false);
    //Get a new StreamReader in ASCII format from a file
    StreamReader srAsciiFromFile =
        new StreamReader("C:\\Temp\\Test.txt",
        System.Text.Encoding.ASCII);
    //Get a new StreamReader from a
    //file with byte order mark detection = false
    StreamReader srFromFileFalse =
        new StreamReader("C:\\Temp\\Test.txt", false);
    //Get a new StreamReader from a file
    StreamReader srFromFile =
        new StreamReader("C:\\Temp\\Test.txt");
    //Get a new StreamReader in ASCII format from a
    //FileStream with byte order mark detection = false and a buffer
    StreamReader srAsciiFromStreamFalse512 = new StreamReader(
        (System.IO.Stream)File.OpenRead("C:\\Temp\\Test.txt"),
        System.Text.Encoding.ASCII, false, 512);
    //Get a new StreamReader in ASCII format from a
    //FileStream with byte order mark detection = false
    StreamReader srAsciiFromStreamFalse = new StreamReader(
        (System.IO.Stream)File.OpenRead("C:\\Temp\\Test.txt"),
        System.Text.Encoding.ASCII, false);
    //Get a new StreamReader in ASCII format from a FileStream
    StreamReader srAsciiFromStream = new StreamReader(
        (System.IO.Stream)File.OpenRead("C:\\Temp\\Test.txt"),
        System.Text.Encoding.ASCII);
    //Get a new StreamReader from a
    //FileStream with byte order mark detection = false
    StreamReader srFromStreamFalse = new StreamReader(
        (System.IO.Stream)File.OpenRead("C:\\Temp\\Test.txt"),
        false);
    //Get a new StreamReader from a FileStream
    StreamReader srFromStream = new StreamReader(
        (System.IO.Stream)File.OpenRead("C:\\Temp\\Test.txt"));
}
Private Sub getNewStreamReader()
    Dim S As Stream = File.OpenRead("C:\Temp\Test.txt")
    'Get a new StreamReader in ASCII format from a
    'file using a buffer and byte order mark detection
    Dim SrAsciiFromFileFalse512 As StreamReader = New StreamReader("C:\Temp\Test.txt", _
        System.Text.Encoding.ASCII, False, 512)
    'Get a new StreamReader in ASCII format from a
    'file with byte order mark detection = false
    Dim SrAsciiFromFileFalse As StreamReader = New StreamReader("C:\Temp\Test.txt", _
        System.Text.Encoding.ASCII, False)
    'Get a new StreamReader in ASCII format from a file 
    Dim SrAsciiFromFile As StreamReader = New StreamReader("C:\Temp\Test.txt", _
        System.Text.Encoding.ASCII)
    'Get a new StreamReader from a
    'file with byte order mark detection = false        
    Dim SrFromFileFalse As StreamReader = New StreamReader("C:\Temp\Test.txt", False)
    'Get a new StreamReader from a file
    Dim SrFromFile As StreamReader = New StreamReader("C:\Temp\Test.txt")
    'Get a new StreamReader in ASCII format from a
    'FileStream with byte order mark detection = false and a buffer
    Dim SrAsciiFromStreamFalse512 As StreamReader = New StreamReader(S, _
        System.Text.Encoding.ASCII, False, 512)
    'Get a new StreamReader in ASCII format from a
    'FileStream with byte order mark detection = false
    Dim SrAsciiFromStreamFalse = New StreamReader(S, _
        System.Text.Encoding.ASCII, False)
    'Get a new StreamReader in ASCII format from a FileStream
    Dim SrAsciiFromStream As StreamReader = New StreamReader(S, _
        System.Text.Encoding.ASCII)
    'Get a new StreamReader from a
    'FileStream with byte order mark detection = false
    Dim SrFromStreamFalse As StreamReader = New StreamReader(S, False)
    'Get a new StreamReader from a FileStream
    Dim SrFromStream As StreamReader = New StreamReader(S)

End Sub

Remarques

Ce constructeur initialise l’encodage tel que spécifié par le encoding paramètre et la taille de la mémoire tampon interne à 1024 octets. L’objet StreamReader tente de détecter l’encodage en examinant les quatre premiers octets du flux. Il reconnaît automatiquement UTF-8, little-endian UTF-16, big-endian UTF-16, little-endian UTF-32 et big-endian UTF-32 text si le fichier commence par les marques d’ordre d’octet appropriées. Sinon, l’encodage fourni par l’utilisateur est utilisé. Pour plus d’informations, consultez la Encoding.GetPreamble méthode.

Le path paramètre peut être un nom de fichier, y compris un fichier sur un partage UNC (Universal Naming Convention).

Le path paramètre n’est pas obligatoire pour être un fichier stocké sur le disque ; il peut s’agir d’une partie d’un système qui prend en charge l’accès à l’aide de flux.

Avertissement

Lorsque vous compilez un ensemble de caractères avec un paramètre culturel particulier et récupérez ces mêmes caractères avec un paramètre culturel différent, les caractères peuvent ne pas être interprétables et peuvent provoquer la levée d’une exception.

Pour obtenir la liste des tâches d’E/S courantes, consultez Tâches d’E/S courantes.

Voir aussi

S’applique à