StreamReader Constructors
Definitie
Belangrijk
Bepaalde informatie heeft betrekking op een voorlopige productversie die aanzienlijk kan worden gewijzigd voordat deze wordt uitgebracht. Microsoft biedt geen enkele expliciete of impliciete garanties met betrekking tot de informatie die hier wordt verstrekt.
Initialiseert een nieuw exemplaar van de StreamReader klasse voor de opgegeven stream.
Overloads
| Name | Description |
|---|---|
| StreamReader(Stream) |
Initialiseert een nieuw exemplaar van de StreamReader klasse voor de opgegeven stream. |
| StreamReader(Stream, Encoding, Boolean, Int32, Boolean) |
Initialiseert een nieuw exemplaar van de klasse voor de StreamReader opgegeven stroom op basis van de opgegeven tekencodering, bytevolgordedetectieoptie en buffergrootte, en laat de stroom eventueel open. |
| StreamReader(String, Encoding, Boolean, FileStreamOptions) |
Initialiseert een nieuw exemplaar van de StreamReader klasse voor het opgegeven bestandspad, met de opgegeven tekencodering, bytevolgordedetectieoptie en geconfigureerd met het opgegeven FileStreamOptions object. |
| StreamReader(String, Encoding, Boolean, Int32) |
Initialiseert een nieuw exemplaar van de StreamReader klasse voor de opgegeven bestandsnaam, met de opgegeven tekencodering, bytevolgordedetectieoptie en buffergrootte. |
| StreamReader(Stream, Encoding, Boolean, Int32) |
Initialiseert een nieuw exemplaar van de klasse voor de StreamReader opgegeven stroom, met de opgegeven tekencodering, bytevolgordedetectieoptie en buffergrootte. |
| StreamReader(Stream, Encoding, Boolean) |
Initialiseert een nieuw exemplaar van de klasse voor de StreamReader opgegeven stroom, met de opgegeven tekencodering en bytevolgordedetectieoptie. |
| StreamReader(String, Encoding, Boolean) |
Initialiseert een nieuw exemplaar van de StreamReader klasse voor de opgegeven bestandsnaam, met de opgegeven optie voor tekencodering en bytevolgordemarkeringsdetectie. |
| StreamReader(String, FileStreamOptions) |
Initialiseert een nieuw exemplaar van de StreamReader klasse voor het opgegeven bestandspad met behulp van de standaardcodering, waarbij detectie van bytevolgordemarkeringen aan het begin van het bestand wordt ingeschakeld en geconfigureerd met het opgegeven FileStreamOptions object. |
| StreamReader(String, Boolean) |
Initialiseert een nieuw exemplaar van de StreamReader klasse voor de opgegeven bestandsnaam, met de opgegeven optie voor de detectie van bytevolgordemarkeringen. |
| StreamReader(Stream, Encoding) |
Initialiseert een nieuw exemplaar van de StreamReader klasse voor de opgegeven stream, met de opgegeven tekencodering. |
| StreamReader(Stream, Boolean) |
Initialiseert een nieuw exemplaar van de klasse voor de StreamReader opgegeven stroom, met de opgegeven optie voor de detectie van bytevolgordemarkeringen. |
| StreamReader(String) |
Initialiseert een nieuw exemplaar van de StreamReader klasse voor de opgegeven bestandsnaam. |
| StreamReader(String, Encoding) |
Initialiseert een nieuw exemplaar van de StreamReader klasse voor de opgegeven bestandsnaam, met de opgegeven tekencodering. |
StreamReader(Stream)
- Bron:
- StreamReader.cs
- Bron:
- StreamReader.cs
- Bron:
- StreamReader.cs
- Bron:
- StreamReader.cs
- Bron:
- StreamReader.cs
Initialiseert een nieuw exemplaar van de StreamReader klasse voor de opgegeven stream.
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)
Parameters
- stream
- Stream
De stroom die moet worden gelezen.
Uitzonderingen
stream biedt geen ondersteuning voor lezen.
stream is null.
Voorbeelden
In het volgende codevoorbeeld ziet u deze StreamReader constructor.
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
Opmerkingen
Met deze constructor wordt de codering geïnitialiseerd naar UTF8Encoding, de BaseStream eigenschap met behulp van de stream parameter en de interne buffergrootte tot 1024 bytes.
Het StreamReader object roept Dispose() het opgegeven Stream object aan wanneer StreamReader.Dispose het wordt aangeroepen.
Caution
Wanneer u een set tekens compileert met een bepaalde culturele instelling en dezelfde tekens met een andere culturele instelling ophaalt, kunnen de tekens mogelijk niet worden geïnterpreteerd en kan er een uitzondering optreden.
Zie Algemene I/O-taken voor een lijst met algemene I/O-taken.
Zie ook
- Bestands- en Stream-I/O
- Procedure: Tekst uit een bestand lezen
- Procedure: Tekst naar een bestand schrijven
Van toepassing op
StreamReader(Stream, Encoding, Boolean, Int32, Boolean)
- Bron:
- StreamReader.cs
- Bron:
- StreamReader.cs
- Bron:
- StreamReader.cs
- Bron:
- StreamReader.cs
- Bron:
- StreamReader.cs
Initialiseert een nieuw exemplaar van de klasse voor de StreamReader opgegeven stroom op basis van de opgegeven tekencodering, bytevolgordedetectieoptie en buffergrootte, en laat de stroom eventueel open.
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)
Parameters
- stream
- Stream
De stroom die moet worden gelezen.
- encoding
- Encoding
De tekencodering die moet worden gebruikt.
- detectEncodingFromByteOrderMarks
- Boolean
true om te zoeken naar bytevolgordemarkeringen aan het begin van het bestand; anders, false.
- bufferSize
- Int32
De minimale buffergrootte, in bytes.
- leaveOpen
- Boolean
true om de stroom open te laten nadat het StreamReader object is verwijderd; falseanders.
Opmerkingen
Tenzij u de leaveOpen parameter trueinstelt op, roept StreamReader het object het Dispose() opgegeven Stream object aan wanneer StreamReader.Dispose het wordt aangeroepen.
De buffergrootte, in bytes, wordt ingesteld door de bufferSize parameter. Als bufferSize deze kleiner is dan de minimale toegestane grootte (128 bytes), wordt de minimale toegestane grootte gebruikt.
Met deze constructor kunt u de codering wijzigen wanneer u het object de eerste keer leest StreamReader . Als de detectEncodingFromByteOrderMarks parameter is true, detecteert de constructor de codering door naar de eerste vier bytes van de stream te kijken. Het herkent automatisch UTF-8, little-endian UTF-16, big-endian UTF-16, little-endian UTF-32 en big-endian UTF-32-tekst als het bestand begint met de juiste bytevolgordemarkeringen. Anders wordt de door de gebruiker geleverde codering gebruikt. Zie de Encoding.GetPreamble methode voor meer informatie.
Note
Bij het lezen van een Streambuffer is het efficiënter om een buffer te gebruiken die dezelfde grootte heeft als de interne buffer van de stroom.
Caution
Wanneer u een set tekens compileert met een bepaalde culturele instelling en dezelfde tekens met een andere culturele instelling ophaalt, worden de tekens mogelijk niet correct geïnterpreteerd en kan er een uitzondering optreden.
Van toepassing op
StreamReader(String, Encoding, Boolean, FileStreamOptions)
- Bron:
- StreamReader.cs
- Bron:
- StreamReader.cs
- Bron:
- StreamReader.cs
- Bron:
- StreamReader.cs
- Bron:
- StreamReader.cs
Initialiseert een nieuw exemplaar van de StreamReader klasse voor het opgegeven bestandspad, met de opgegeven tekencodering, bytevolgordedetectieoptie en geconfigureerd met het opgegeven FileStreamOptions object.
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)
Parameters
- path
- String
Het volledige bestandspad dat moet worden gelezen.
- encoding
- Encoding
De tekencodering die moet worden gebruikt.
- detectEncodingFromByteOrderMarks
- Boolean
Geeft aan of u wilt zoeken naar bytevolgordemarkeringen aan het begin van het bestand.
- options
- FileStreamOptions
Een object dat de configuratieopties voor de onderliggende FileStreamobjecten aangeeft.
Uitzonderingen
path
encoding of options is null.
Kan het bestand niet vinden.
Het opgegeven pad is ongeldig, zoals op een niet-toegewezen station.
path bevat een onjuiste of ongeldige syntaxis voor bestandsnaam, mapnaam of volumelabel.
Zie ook
- Encoding
- Bestands- en Stream-I/O
- Procedure: Tekst uit een bestand lezen
- Procedure: Tekst naar een bestand schrijven
Van toepassing op
StreamReader(String, Encoding, Boolean, Int32)
- Bron:
- StreamReader.cs
- Bron:
- StreamReader.cs
- Bron:
- StreamReader.cs
- Bron:
- StreamReader.cs
- Bron:
- StreamReader.cs
Initialiseert een nieuw exemplaar van de StreamReader klasse voor de opgegeven bestandsnaam, met de opgegeven tekencodering, bytevolgordedetectieoptie en buffergrootte.
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)
Parameters
- path
- String
Het volledige bestandspad dat moet worden gelezen.
- encoding
- Encoding
De tekencodering die moet worden gebruikt.
- detectEncodingFromByteOrderMarks
- Boolean
Geeft aan of u wilt zoeken naar bytevolgordemarkeringen aan het begin van het bestand.
- bufferSize
- Int32
De minimale buffergrootte, in bytes.
Uitzonderingen
path is een lege tekenreeks ("").
path of encoding is null.
Kan het bestand niet vinden.
Het opgegeven pad is ongeldig, zoals op een niet-toegewezen station.
path bevat een onjuiste of ongeldige syntaxis voor bestandsnaam, mapnaam of volumelabel.
bufferSize is kleiner dan of gelijk aan nul, met uitzondering van -1, die de standaardbuffergrootte mag aangeven.
Voorbeelden
In het volgende codevoorbeeld ziet u deze StreamReader constructor.
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
Opmerkingen
Met deze constructor wordt de codering geïnitialiseerd zoals opgegeven door de encoding parameter.
Met deze constructor kunt u de codering wijzigen wanneer u het object de eerste keer leest StreamReader . De detectEncodingFromByteOrderMarks parameter detecteert de codering door naar de eerste vier bytes van de stream te kijken. Het herkent automatisch UTF-8, little-endian UTF-16, big-endian UTF-16, little-endian UTF-32 en big-endian UTF-32-tekst als het bestand begint met de juiste bytevolgordemarkeringen. Anders wordt de door de gebruiker geleverde codering gebruikt. Zie de Encoding.GetPreamble methode voor meer informatie.
De buffergrootte, in bytes, wordt ingesteld door de bufferSize parameter. Als bufferSize deze kleiner is dan de minimale toegestane grootte (128 bytes), wordt de minimale toegestane grootte gebruikt.
De path parameter kan een bestandsnaam zijn, inclusief een bestand op een UNC-share (Universal Naming Convention).
De parameter hoeft geen bestand te zijn dat is opgeslagen op schijf. Het path kan deel uitmaken van een systeem dat toegang via streams ondersteunt.
Caution
Wanneer u een set tekens compileert met een bepaalde culturele instelling en dezelfde tekens met een andere culturele instelling ophaalt, kunnen de tekens mogelijk niet worden geïnterpreteerd en kan er een uitzondering optreden.
Zie Algemene I/O-taken voor een lijst met algemene I/O-taken.
Zie ook
- Encoding
- Bestands- en Stream-I/O
- Procedure: Tekst uit een bestand lezen
- Procedure: Tekst naar een bestand schrijven
Van toepassing op
StreamReader(Stream, Encoding, Boolean, Int32)
- Bron:
- StreamReader.cs
- Bron:
- StreamReader.cs
- Bron:
- StreamReader.cs
- Bron:
- StreamReader.cs
- Bron:
- StreamReader.cs
Initialiseert een nieuw exemplaar van de klasse voor de StreamReader opgegeven stroom, met de opgegeven tekencodering, bytevolgordedetectieoptie en buffergrootte.
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)
Parameters
- stream
- Stream
De stroom die moet worden gelezen.
- encoding
- Encoding
De tekencodering die moet worden gebruikt.
- detectEncodingFromByteOrderMarks
- Boolean
Geeft aan of u wilt zoeken naar bytevolgordemarkeringen aan het begin van het bestand.
- bufferSize
- Int32
De minimale buffergrootte, in bytes.
Uitzonderingen
De stream biedt geen ondersteuning voor lezen.
stream of encoding is null.
bufferSize is kleiner dan of gelijk aan nul, met uitzondering van -1, die de standaardbuffergrootte mag aangeven.
Voorbeelden
In het volgende codevoorbeeld ziet u deze StreamReader constructor.
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
Opmerkingen
De buffergrootte, in bytes, wordt ingesteld door de bufferSize parameter. Als bufferSize deze kleiner is dan de minimale toegestane grootte (128 bytes), wordt de minimale toegestane grootte gebruikt.
Met deze constructor kunt u de codering wijzigen wanneer u het object de eerste keer leest StreamReader . De detectEncodingFromByteOrderMarks parameter detecteert de codering door naar de eerste vier bytes van de stream te kijken. Het herkent automatisch UTF-8, little-endian UTF-16, big-endian UTF-16, little-endian UTF-32 en big-endian UTF-32-tekst als het bestand begint met de juiste bytevolgordemarkeringen. Anders wordt de door de gebruiker geleverde codering gebruikt. Zie de Encoding.GetPreamble methode voor meer informatie.
Het StreamReader object roept Dispose() het opgegeven Stream object aan wanneer StreamReader.Dispose het wordt aangeroepen.
Note
Bij het lezen van een Streambuffer is het efficiënter om een buffer te gebruiken die dezelfde grootte heeft als de interne buffer van de stroom.
Caution
Wanneer u een set tekens compileert met een bepaalde culturele instelling en dezelfde tekens met een andere culturele instelling ophaalt, kunnen de tekens mogelijk niet worden geïnterpreteerd en kan er een uitzondering optreden.
Zie Algemene I/O-taken voor een lijst met algemene I/O-taken.
Zie ook
- Encoding
- Bestands- en Stream-I/O
- Procedure: Tekst uit een bestand lezen
- Procedure: Tekst naar een bestand schrijven
Van toepassing op
StreamReader(Stream, Encoding, Boolean)
- Bron:
- StreamReader.cs
- Bron:
- StreamReader.cs
- Bron:
- StreamReader.cs
- Bron:
- StreamReader.cs
- Bron:
- StreamReader.cs
Initialiseert een nieuw exemplaar van de klasse voor de StreamReader opgegeven stroom, met de opgegeven tekencodering en bytevolgordedetectieoptie.
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)
Parameters
- stream
- Stream
De stroom die moet worden gelezen.
- encoding
- Encoding
De tekencodering die moet worden gebruikt.
- detectEncodingFromByteOrderMarks
- Boolean
Geeft aan of u wilt zoeken naar bytevolgordemarkeringen aan het begin van het bestand.
Uitzonderingen
stream biedt geen ondersteuning voor lezen.
stream of encoding is null.
Voorbeelden
In het volgende codevoorbeeld ziet u deze StreamReader constructor.
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
Opmerkingen
Met deze constructor wordt de codering geïnitialiseerd zoals opgegeven door de encoding parameter, de BaseStream eigenschap met behulp van de stream parameter en de interne buffergrootte tot 1024 bytes.
De detectEncodingFromByteOrderMarks parameter detecteert de codering door naar de eerste vier bytes van de stream te kijken. Het herkent automatisch UTF-8, little-endian UTF-16, big-endian UTF-16, little-endian UTF-32 en big-endian UTF-32-tekst als het bestand begint met de juiste bytevolgordemarkeringen. Anders wordt de door de gebruiker geleverde codering gebruikt. Zie de Encoding.GetPreamble methode voor meer informatie.
Het StreamReader object roept Dispose() het opgegeven Stream object aan wanneer StreamReader.Dispose het wordt aangeroepen.
Caution
Wanneer u een set tekens compileert met een bepaalde culturele instelling en dezelfde tekens met een andere culturele instelling ophaalt, kunnen de tekens mogelijk niet worden geïnterpreteerd en kan er een uitzondering optreden.
Zie Algemene I/O-taken voor een lijst met algemene I/O-taken.
Zie ook
- Encoding
- Bestands- en Stream-I/O
- Procedure: Tekst uit een bestand lezen
- Procedure: Tekst naar een bestand schrijven
Van toepassing op
StreamReader(String, Encoding, Boolean)
- Bron:
- StreamReader.cs
- Bron:
- StreamReader.cs
- Bron:
- StreamReader.cs
- Bron:
- StreamReader.cs
- Bron:
- StreamReader.cs
Initialiseert een nieuw exemplaar van de StreamReader klasse voor de opgegeven bestandsnaam, met de opgegeven optie voor tekencodering en bytevolgordemarkeringsdetectie.
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)
Parameters
- path
- String
Het volledige bestandspad dat moet worden gelezen.
- encoding
- Encoding
De tekencodering die moet worden gebruikt.
- detectEncodingFromByteOrderMarks
- Boolean
Geeft aan of u wilt zoeken naar bytevolgordemarkeringen aan het begin van het bestand.
Uitzonderingen
path is een lege tekenreeks ("").
path of encoding is null.
Kan het bestand niet vinden.
Het opgegeven pad is ongeldig, zoals op een niet-toegewezen station.
path bevat een onjuiste of ongeldige syntaxis voor bestandsnaam, mapnaam of volumelabel.
Voorbeelden
In het volgende codevoorbeeld ziet u deze StreamReader constructor.
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
Opmerkingen
Met deze constructor wordt de codering geïnitialiseerd zoals opgegeven door de encoding parameter en de interne buffergrootte tot 1024 bytes.
De detectEncodingFromByteOrderMarks parameter detecteert de codering door naar de eerste vier bytes van de stream te kijken. Het herkent automatisch UTF-8, little-endian UTF-16, big-endian UTF-16, little-endian UTF-32 en big-endian UTF-32-tekst als het bestand begint met de juiste bytevolgordemarkeringen. Anders wordt de door de gebruiker geleverde codering gebruikt. Zie de Encoding.GetPreamble methode voor meer informatie.
De path parameter kan een bestandsnaam zijn, inclusief een bestand op een UNC-share (Universal Naming Convention).
De parameter hoeft geen bestand te zijn dat is opgeslagen op schijf. Het path kan deel uitmaken van een systeem dat toegang via streams ondersteunt.
Caution
Wanneer u een set tekens compileert met een bepaalde culturele instelling en dezelfde tekens met een andere culturele instelling ophaalt, kunnen de tekens mogelijk niet worden geïnterpreteerd en kan er een uitzondering optreden.
Zie Algemene I/O-taken voor een lijst met algemene I/O-taken.
Zie ook
- Encoding
- Bestands- en Stream-I/O
- Procedure: Tekst uit een bestand lezen
- Procedure: Tekst naar een bestand schrijven
Van toepassing op
StreamReader(String, FileStreamOptions)
- Bron:
- StreamReader.cs
- Bron:
- StreamReader.cs
- Bron:
- StreamReader.cs
- Bron:
- StreamReader.cs
- Bron:
- StreamReader.cs
Initialiseert een nieuw exemplaar van de StreamReader klasse voor het opgegeven bestandspad met behulp van de standaardcodering, waarbij detectie van bytevolgordemarkeringen aan het begin van het bestand wordt ingeschakeld en geconfigureerd met het opgegeven FileStreamOptions object.
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)
Parameters
- path
- String
Het volledige bestandspad dat moet worden gelezen.
- options
- FileStreamOptions
Een object dat de configuratieopties voor de onderliggende FileStreamobjecten aangeeft.
Uitzonderingen
path is niet leesbaar.
– of –
<code data-dev-comment-type="paramref">path</code> is an empty string ("").
path of options is null.
Kan het bestand niet vinden.
Het opgegeven pad is ongeldig, zoals op een niet-toegewezen station.
path bevat een onjuiste of ongeldige syntaxis voor bestandsnaam, mapnaam of volumelabel.
Zie ook
- Encoding
- Bestands- en Stream-I/O
- Procedure: Tekst uit een bestand lezen
- Procedure: Tekst naar een bestand schrijven
Van toepassing op
StreamReader(String, Boolean)
- Bron:
- StreamReader.cs
- Bron:
- StreamReader.cs
- Bron:
- StreamReader.cs
- Bron:
- StreamReader.cs
- Bron:
- StreamReader.cs
Initialiseert een nieuw exemplaar van de StreamReader klasse voor de opgegeven bestandsnaam, met de opgegeven optie voor de detectie van bytevolgordemarkeringen.
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)
Parameters
- path
- String
Het volledige bestandspad dat moet worden gelezen.
- detectEncodingFromByteOrderMarks
- Boolean
Geeft aan of u wilt zoeken naar bytevolgordemarkeringen aan het begin van het bestand.
Uitzonderingen
path is een lege tekenreeks ("").
path is null.
Kan het bestand niet vinden.
Het opgegeven pad is ongeldig, zoals op een niet-toegewezen station.
path bevat een onjuiste of ongeldige syntaxis voor bestandsnaam, mapnaam of volumelabel.
Voorbeelden
In het volgende codevoorbeeld ziet u deze StreamReader constructor.
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
Opmerkingen
Met deze constructor wordt de codering geïnitialiseerd naar UTF8Encoding, de BaseStream eigenschap met behulp van de stream parameter en de interne buffergrootte tot 1024 bytes.
De path parameter kan een bestandsnaam zijn, inclusief een bestand op een UNC-share (Universal Naming Convention).
De parameter hoeft geen bestand te zijn dat is opgeslagen op schijf. Het path kan deel uitmaken van een systeem dat toegang via streams ondersteunt.
De detectEncodingFromByteOrderMarks parameter detecteert de codering door naar de eerste vier bytes van de stream te kijken. Het herkent automatisch UTF-8, little-endian UTF-16, big-endian UTF-16, little-endian UTF-32 en big-endian UTF-32-tekst als het bestand begint met de juiste bytevolgordemarkeringen. Anders wordt het UTF8Encoding gebruikt. Zie de Encoding.GetPreamble methode voor meer informatie.
Zie Algemene I/O-taken voor een lijst met algemene I/O-taken.
Zie ook
- Bestands- en Stream-I/O
- Procedure: Tekst uit een bestand lezen
- Procedure: Tekst naar een bestand schrijven
Van toepassing op
StreamReader(Stream, Encoding)
- Bron:
- StreamReader.cs
- Bron:
- StreamReader.cs
- Bron:
- StreamReader.cs
- Bron:
- StreamReader.cs
- Bron:
- StreamReader.cs
Initialiseert een nieuw exemplaar van de StreamReader klasse voor de opgegeven stream, met de opgegeven tekencodering.
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)
Parameters
- stream
- Stream
De stroom die moet worden gelezen.
- encoding
- Encoding
De tekencodering die moet worden gebruikt.
Uitzonderingen
stream biedt geen ondersteuning voor lezen.
stream of encoding is null.
Voorbeelden
In het volgende codevoorbeeld ziet u deze StreamReader constructor.
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
Opmerkingen
De tekencodering wordt ingesteld door de encoding parameter en de buffergrootte is ingesteld op 1024 bytes. Het StreamReader object probeert de codering te detecteren door naar de eerste vier bytes van de stream te kijken. Het herkent automatisch UTF-8, little-endian UTF-16, big-endian UTF-16, little-endian UTF-32 en big-endian UTF-32-tekst als het bestand begint met de juiste bytevolgordemarkeringen. Anders wordt de door de gebruiker geleverde codering gebruikt. Zie de Encoding.GetPreamble methode voor meer informatie.
Het StreamReader object roept Dispose() het opgegeven Stream object aan wanneer StreamReader.Dispose het wordt aangeroepen.
Caution
Wanneer u een set tekens compileert met een bepaalde culturele instelling en dezelfde tekens met een andere culturele instelling ophaalt, kunnen de tekens mogelijk niet worden geïnterpreteerd en kan er een uitzondering optreden.
Zie Algemene I/O-taken voor een lijst met algemene I/O-taken.
Zie ook
- Encoding
- Bestands- en Stream-I/O
- Procedure: Tekst uit een bestand lezen
- Procedure: Tekst naar een bestand schrijven
Van toepassing op
StreamReader(Stream, Boolean)
- Bron:
- StreamReader.cs
- Bron:
- StreamReader.cs
- Bron:
- StreamReader.cs
- Bron:
- StreamReader.cs
- Bron:
- StreamReader.cs
Initialiseert een nieuw exemplaar van de klasse voor de StreamReader opgegeven stroom, met de opgegeven optie voor de detectie van bytevolgordemarkeringen.
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)
Parameters
- stream
- Stream
De stroom die moet worden gelezen.
- detectEncodingFromByteOrderMarks
- Boolean
Geeft aan of u wilt zoeken naar bytevolgordemarkeringen aan het begin van het bestand.
Uitzonderingen
stream biedt geen ondersteuning voor lezen.
stream is null.
Voorbeelden
In het volgende codevoorbeeld ziet u deze StreamReader constructor.
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
Opmerkingen
Met deze constructor wordt de codering geïnitialiseerd naar UTF8Encoding, de BaseStream eigenschap met behulp van de stream parameter en de interne buffergrootte tot 1024 bytes.
De detectEncodingFromByteOrderMarks parameter detecteert de codering door naar de eerste vier bytes van de stream te kijken. Het herkent automatisch UTF-8, little-endian UTF-16, big-endian UTF-16, little-endian UTF-32 en big-endian UTF-32-tekst als het bestand begint met de juiste bytevolgordemarkeringen. Zie de Encoding.GetPreamble methode voor meer informatie.
Het StreamReader object roept Dispose() het opgegeven Stream object aan wanneer StreamReader.Dispose het wordt aangeroepen.
Zie Algemene I/O-taken voor een lijst met algemene I/O-taken.
Zie ook
- Bestands- en Stream-I/O
- Procedure: Tekst uit een bestand lezen
- Procedure: Tekst naar een bestand schrijven
Van toepassing op
StreamReader(String)
- Bron:
- StreamReader.cs
- Bron:
- StreamReader.cs
- Bron:
- StreamReader.cs
- Bron:
- StreamReader.cs
- Bron:
- StreamReader.cs
Initialiseert een nieuw exemplaar van de StreamReader klasse voor de opgegeven bestandsnaam.
public:
StreamReader(System::String ^ path);
public StreamReader(string path);
new System.IO.StreamReader : string -> System.IO.StreamReader
Public Sub New (path As String)
Parameters
- path
- String
Het volledige bestandspad dat moet worden gelezen.
Uitzonderingen
path is een lege tekenreeks ("").
path is null.
Kan het bestand niet vinden.
Het opgegeven pad is ongeldig, zoals op een niet-toegewezen station.
path bevat een onjuiste of ongeldige syntaxis voor bestandsnaam, mapnaam of volumelabel.
Voorbeelden
In het volgende codevoorbeeld ziet u deze StreamReader constructor.
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
Opmerkingen
Het volledige bestandspad wordt opgegeven door de path parameter. Deze constructor initialiseert de codering naar UTF8Encoding en de buffergrootte naar 1024 bytes.
De path parameter kan een bestandsnaam zijn, inclusief een bestand op een UNC-share (Universal Naming Convention).
De parameter hoeft geen bestand te zijn dat is opgeslagen op schijf. Het path kan deel uitmaken van een systeem dat toegang via streams ondersteunt.
Caution
Wanneer u een set tekens compileert met een bepaalde culturele instelling en dezelfde tekens met een andere culturele instelling ophaalt, kunnen de tekens mogelijk niet worden geïnterpreteerd en kan er een uitzondering optreden.
Zie Algemene I/O-taken voor een lijst met algemene I/O-taken.
Zie ook
- Encoding
- Bestands- en Stream-I/O
- Procedure: Tekst uit een bestand lezen
- Procedure: Tekst naar een bestand schrijven
Van toepassing op
StreamReader(String, Encoding)
- Bron:
- StreamReader.cs
- Bron:
- StreamReader.cs
- Bron:
- StreamReader.cs
- Bron:
- StreamReader.cs
- Bron:
- StreamReader.cs
Initialiseert een nieuw exemplaar van de StreamReader klasse voor de opgegeven bestandsnaam, met de opgegeven tekencodering.
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)
Parameters
- path
- String
Het volledige bestandspad dat moet worden gelezen.
- encoding
- Encoding
De tekencodering die moet worden gebruikt.
Uitzonderingen
path is een lege tekenreeks ("").
path of encoding is null.
Kan het bestand niet vinden.
Het opgegeven pad is ongeldig, zoals op een niet-toegewezen station.
path bevat een onjuiste of ongeldige syntaxis voor bestandsnaam, mapnaam of volumelabel.
Voorbeelden
In het volgende codevoorbeeld ziet u deze StreamReader constructor.
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
Opmerkingen
Met deze constructor wordt de codering geïnitialiseerd zoals opgegeven door de encoding parameter en de interne buffergrootte tot 1024 bytes. Het StreamReader object probeert de codering te detecteren door naar de eerste vier bytes van de stream te kijken. Het herkent automatisch UTF-8, little-endian UTF-16, big-endian UTF-16, little-endian UTF-32 en big-endian UTF-32-tekst als het bestand begint met de juiste bytevolgordemarkeringen. Anders wordt de door de gebruiker geleverde codering gebruikt. Zie de Encoding.GetPreamble methode voor meer informatie.
De path parameter kan een bestandsnaam zijn, inclusief een bestand op een UNC-share (Universal Naming Convention).
De parameter hoeft geen bestand te zijn dat is opgeslagen op schijf. Het path kan deel uitmaken van een systeem dat toegang via streams ondersteunt.
Caution
Wanneer u een set tekens compileert met een bepaalde culturele instelling en dezelfde tekens met een andere culturele instelling ophaalt, kunnen de tekens mogelijk niet worden geïnterpreteerd en kan er een uitzondering optreden.
Zie Algemene I/O-taken voor een lijst met algemene I/O-taken.
Zie ook
- Encoding
- Bestands- en Stream-I/O
- Procedure: Tekst uit een bestand lezen
- Procedure: Tekst naar een bestand schrijven