Initialise une nouvelle instance de la classe StreamReader pour le nom de fichier spécifié, avec l'encodage de caractères spécifié.
Assembly : mscorlib (dans mscorlib.dll)
Public Sub New ( _ path As String, _ encoding As Encoding _ )
public StreamReader( string path, Encoding encoding )
public:
StreamReader(
String^ path,
Encoding^ encoding
)
new : path:string * encoding:Encoding -> StreamReader
Paramètres
- path
- Type : System.String
Chemin d'accès complet au fichier à lire.
- encoding
- Type : System.Text.Encoding
Encodage de caractères à utiliser.
| Exception | Condition |
|---|---|
| ArgumentException |
path est une chaîne vide (""). |
| ArgumentNullException |
path ou encoding est null. |
| FileNotFoundException |
Le fichier est introuvable. |
| DirectoryNotFoundException |
Le chemin d'accès spécifié n'est pas valide, il se trouve par exemple sur un lecteur non mappé. |
| NotSupportedException |
path comprend une syntaxe incorrecte ou non valide pour les noms de fichiers, les noms de répertoires ou les noms de volumes. |
Ce constructeur rétablit la taille par défaut de l'encodage, comme spécifié par le paramètre encoding, et affecte à la mémoire tampon interne 1 024 octets. L'objet StreamReader tente de détecter l'encodage en examinant les trois premiers octets du flux. Il reconnaît automatiquement UTF-8, le texte Unicode little-endian et big-endian si le fichier démarre avec les marques d'ordre d'octet appropriées. Sinon, l'encodage fourni par l'utilisateur est utilisé. Pour plus d'informations, consultez la méthode Encoding.GetPreamble.
Le paramètre path peut être un nom de fichier, notamment un fichier sur un partage de convention d'affectation de noms (UNC).
Le paramètre path n'est pas nécessairement un fichier enregistré sur disque, mais peut également être n'importe quelle partie d'un système qui prend en charge l'accès via des flux.
Attention
|
|---|
|
Lorsque vous compilez un jeu de caractères avec un paramètre de culture particulier et que vous récupérez ces mêmes caractères avec un paramètre de culture différent, il se peut que les caractères ne puissent pas être interprétés et provoquent la levée d'une exception. |
Pour obtenir la liste des tâches d'E/S courantes, consultez Tâches d'E/S courantes.
L'exemple de code suivant illustre ce constructeur StreamReader.
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
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")); }
void getNewStreamReader() { //Get a new StreamReader in ASCII format from a //file using a buffer and byte order mark detection StreamReader^ srAsciiFromFileFalse512 = gcnew 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 = gcnew StreamReader( "C:\\Temp\\Test.txt",System::Text::Encoding::ASCII,false ); //Get a new StreamReader in ASCII format from a file StreamReader^ srAsciiFromFile = gcnew StreamReader( "C:\\Temp\\Test.txt",System::Text::Encoding::ASCII ); //Get a new StreamReader from a //file with byte order mark detection = false StreamReader^ srFromFileFalse = gcnew StreamReader( "C:\\Temp\\Test.txt",false ); //Get a new StreamReader from a file StreamReader^ srFromFile = gcnew 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 = gcnew StreamReader( 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 = gcnew StreamReader( File::OpenRead( "C:\\Temp\\Test.txt" ),System::Text::Encoding::ASCII,false ); //Get a new StreamReader in ASCII format from a FileStream StreamReader^ srAsciiFromStream = gcnew StreamReader( 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 = gcnew StreamReader( File::OpenRead( "C:\\Temp\\Test.txt" ),false ); //Get a new StreamReader from a FileStream StreamReader^ srFromStream = gcnew StreamReader( File::OpenRead( "C:\\Temp\\Test.txt" ) ); }
.NET Framework
Pris en charge dans : 4, 3.5, 3.0, 2.0, 1.1, 1.0.NET Framework Client Profile
Pris en charge dans : 4, 3.5 SP1Windows 7, Windows Vista SP1 ou ultérieur, Windows XP SP3, Windows XP SP2 Édition x64, Windows Server 2008 (installation minimale non prise en charge), Windows Server 2008 R2 (installation minimale prise en charge avec SP1 ou version ultérieure), Windows Server 2003 SP2
Le .NET Framework ne prend pas en charge toutes les versions de chaque plateforme. Pour obtenir la liste des versions prises en charge, consultez Configuration requise du .NET Framework.
Attention