StreamReader Konstruktorer

Definition

Initierar en ny instans av StreamReader klassen för den angivna strömmen.

Överlagringar

Name Description
StreamReader(Stream)

Initierar en ny instans av StreamReader klassen för den angivna strömmen.

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

Initierar en ny instans av StreamReader klassen för den angivna strömmen baserat på angiven teckenkodning, identifieringsalternativ för byteordningsmarkering och buffertstorlek, och om du vill lämnar strömmen öppen.

StreamReader(String, Encoding, Boolean, FileStreamOptions)

Initierar en ny instans av StreamReader klassen för den angivna filsökvägen med angiven teckenkodning, identifieringsalternativ för byteordningsmarkering och konfigurerat med det angivna FileStreamOptions objektet.

StreamReader(String, Encoding, Boolean, Int32)

Initierar en ny instans av StreamReader klassen för det angivna filnamnet, med angiven teckenkodning, identifieringsalternativ för byteordningsmarkering och buffertstorlek.

StreamReader(Stream, Encoding, Boolean, Int32)

Initierar en ny instans av StreamReader klassen för den angivna strömmen med angiven teckenkodning, identifieringsalternativ för byteordningsmarkering och buffertstorlek.

StreamReader(Stream, Encoding, Boolean)

Initierar en ny instans av StreamReader klassen för den angivna strömmen med det angivna teckenkodnings- och byteordningsmarkeringsalternativet.

StreamReader(String, Encoding, Boolean)

Initierar en ny instans av StreamReader klassen för det angivna filnamnet, med det angivna teckenkodnings- och byteordningsmarkeringsidentifieringsalternativet.

StreamReader(String, FileStreamOptions)

Initierar en ny instans av klassen för den angivna filsökvägen med hjälp av StreamReader standardkodningen, aktiverar identifiering av byteordningsmarkeringar i början av filen och konfigureras med det angivna FileStreamOptions objektet.

StreamReader(String, Boolean)

Initierar en ny instans av StreamReader klassen för det angivna filnamnet med det angivna identifieringsalternativet byteordningsmärke.

StreamReader(Stream, Encoding)

Initierar en ny instans av StreamReader klassen för den angivna strömmen med angiven teckenkodning.

StreamReader(Stream, Boolean)

Initierar en ny instans av StreamReader klassen för den angivna strömmen med det angivna identifieringsalternativet byteordningsmärke.

StreamReader(String)

Initierar en ny instans av StreamReader klassen för det angivna filnamnet.

StreamReader(String, Encoding)

Initierar en ny instans av StreamReader klassen för det angivna filnamnet med angiven teckenkodning.

StreamReader(Stream)

Källa:
StreamReader.cs
Källa:
StreamReader.cs
Källa:
StreamReader.cs
Källa:
StreamReader.cs
Källa:
StreamReader.cs

Initierar en ny instans av StreamReader klassen för den angivna strömmen.

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)

Parametrar

stream
Stream

Strömmen som ska läsas.

Undantag

stream stöder inte läsning.

stream är null.

Exempel

Följande kodexempel visar den här StreamReader konstruktorn.

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

Kommentarer

Den här konstruktorn initierar kodningen till UTF8Encoding, BaseStream egenskapen med parametern stream och den interna buffertstorleken till 1 024 byte.

Objektet StreamReader anropar Dispose() det angivna Stream objektet när StreamReader.Dispose det anropas.

Caution

När du kompilerar en uppsättning tecken med en viss kulturell inställning och hämtar samma tecken med en annan kulturell inställning kanske tecknen inte kan tolkas och kan orsaka ett undantag.

En lista över vanliga I/O-uppgifter finns i Vanliga I/O-uppgifter.

Se även

Gäller för

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

Källa:
StreamReader.cs
Källa:
StreamReader.cs
Källa:
StreamReader.cs
Källa:
StreamReader.cs
Källa:
StreamReader.cs

Initierar en ny instans av StreamReader klassen för den angivna strömmen baserat på angiven teckenkodning, identifieringsalternativ för byteordningsmarkering och buffertstorlek, och om du vill lämnar strömmen öppen.

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)

Parametrar

stream
Stream

Strömmen som ska läsas.

encoding
Encoding

Teckenkodningen som ska användas.

detectEncodingFromByteOrderMarks
Boolean

trueför att söka efter byteordningsmarkeringar i början av filen. annars . false

bufferSize
Int32

Minsta buffertstorlek i byte.

leaveOpen
Boolean

true för att lämna strömmen öppen när objektet StreamReader har kasserats, falseannars .

Kommentarer

Om du inte anger parametern leaveOpen till trueanropas StreamReaderDispose() objektet på det angivna Stream objektet när StreamReader.Dispose det anropas.

Buffertstorleken i byte anges av parametern bufferSize . Om bufferSize är mindre än den minsta tillåtna storleken (128 byte) används den minsta tillåtna storleken.

Med den här konstruktorn kan du ändra kodningen första gången du läser från StreamReader objektet. Om parametern detectEncodingFromByteOrderMarks är trueidentifierar konstruktorn kodningen genom att titta på strömmens första fyra byte. Den identifierar automatiskt UTF-8, little-endian UTF-16, big-endian UTF-16, little-endian UTF-32 och big-endian UTF-32 text om filen börjar med lämpliga byteordningsmarkeringar. I annat fall används den kodning som tillhandahålls av användaren. Mer information finns i Encoding.GetPreamble metoden.

Note

När du läser från en Streamär det mer effektivt att använda en buffert som har samma storlek som strömmens interna buffert.

Caution

När du kompilerar en uppsättning tecken med en viss kulturell inställning och hämtar samma tecken med en annan kulturell inställning, kanske tecknen inte tolkas korrekt och kan orsaka ett undantag.

Gäller för

StreamReader(String, Encoding, Boolean, FileStreamOptions)

Källa:
StreamReader.cs
Källa:
StreamReader.cs
Källa:
StreamReader.cs
Källa:
StreamReader.cs
Källa:
StreamReader.cs

Initierar en ny instans av StreamReader klassen för den angivna filsökvägen med angiven teckenkodning, identifieringsalternativ för byteordningsmarkering och konfigurerat med det angivna FileStreamOptions objektet.

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)

Parametrar

path
String

Den fullständiga filsökvägen som ska läsas.

encoding
Encoding

Teckenkodningen som ska användas.

detectEncodingFromByteOrderMarks
Boolean

Anger om byteordningsmarkeringar ska sökas i början av filen.

options
FileStreamOptions

Ett objekt som anger konfigurationsalternativen för den underliggande FileStream.

Undantag

path är inte läsbar.

      -or-

path är en tom sträng ("").

path eller encoding är optionsnull.

Det går inte att hitta filen.

Den angivna sökvägen är ogiltig, till exempel på en ommappad enhet.

path innehåller en felaktig eller ogiltig syntax för filnamn, katalognamn eller volymetikett.

Se även

Gäller för

StreamReader(String, Encoding, Boolean, Int32)

Källa:
StreamReader.cs
Källa:
StreamReader.cs
Källa:
StreamReader.cs
Källa:
StreamReader.cs
Källa:
StreamReader.cs

Initierar en ny instans av StreamReader klassen för det angivna filnamnet, med angiven teckenkodning, identifieringsalternativ för byteordningsmarkering och buffertstorlek.

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)

Parametrar

path
String

Den fullständiga filsökvägen som ska läsas.

encoding
Encoding

Teckenkodningen som ska användas.

detectEncodingFromByteOrderMarks
Boolean

Anger om byteordningsmarkeringar ska sökas i början av filen.

bufferSize
Int32

Minsta buffertstorlek i byte.

Undantag

path är en tom sträng ("").

path eller encoding är null.

Det går inte att hitta filen.

Den angivna sökvägen är ogiltig, till exempel på en ommappad enhet.

path innehåller en felaktig eller ogiltig syntax för filnamn, katalognamn eller volymetikett.

bufferSize är mindre än eller lika med noll, förutom -1, vilket är tillåtet att ange standardbuffertstorleken.

Exempel

Följande kodexempel visar den här StreamReader konstruktorn.

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

Kommentarer

Den här konstruktorn initierar kodningen enligt parametern encoding .

Med den här konstruktorn kan du ändra kodningen första gången du läser från StreamReader objektet. Parametern detectEncodingFromByteOrderMarks identifierar kodningen genom att titta på de första fyra byteen i dataströmmen. Den identifierar automatiskt UTF-8, little-endian UTF-16, big-endian UTF-16, little-endian UTF-32 och big-endian UTF-32 text om filen börjar med lämpliga byteordningsmarkeringar. I annat fall används den kodning som tillhandahålls av användaren. Mer information finns i Encoding.GetPreamble metoden.

Buffertstorleken i byte anges av parametern bufferSize . Om bufferSize är mindre än den minsta tillåtna storleken (128 byte) används den minsta tillåtna storleken.

Parametern path kan vara ett filnamn, inklusive en fil på en UNC-resurs (Universal Naming Convention).

Parametern måste inte vara en fil som lagras på disken. Den path kan vara en del av ett system som stöder åtkomst med hjälp av strömmar.

Caution

När du kompilerar en uppsättning tecken med en viss kulturell inställning och hämtar samma tecken med en annan kulturell inställning kanske tecknen inte kan tolkas och kan orsaka ett undantag.

En lista över vanliga I/O-uppgifter finns i Vanliga I/O-uppgifter.

Se även

Gäller för

StreamReader(Stream, Encoding, Boolean, Int32)

Källa:
StreamReader.cs
Källa:
StreamReader.cs
Källa:
StreamReader.cs
Källa:
StreamReader.cs
Källa:
StreamReader.cs

Initierar en ny instans av StreamReader klassen för den angivna strömmen med angiven teckenkodning, identifieringsalternativ för byteordningsmarkering och buffertstorlek.

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)

Parametrar

stream
Stream

Strömmen som ska läsas.

encoding
Encoding

Teckenkodningen som ska användas.

detectEncodingFromByteOrderMarks
Boolean

Anger om byteordningsmarkeringar ska sökas i början av filen.

bufferSize
Int32

Minsta buffertstorlek i byte.

Undantag

Strömmen stöder inte läsning.

stream eller encoding är null.

bufferSize är mindre än eller lika med noll, förutom -1, vilket är tillåtet att ange standardbuffertstorleken.

Exempel

Följande kodexempel visar den här StreamReader konstruktorn.

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

Kommentarer

Buffertstorleken i byte anges av parametern bufferSize . Om bufferSize är mindre än den minsta tillåtna storleken (128 byte) används den minsta tillåtna storleken.

Med den här konstruktorn kan du ändra kodningen första gången du läser från StreamReader objektet. Parametern detectEncodingFromByteOrderMarks identifierar kodningen genom att titta på de första fyra byteen i dataströmmen. Den identifierar automatiskt UTF-8, little-endian UTF-16, big-endian UTF-16, little-endian UTF-32 och big-endian UTF-32 text om filen börjar med lämpliga byteordningsmarkeringar. I annat fall används den kodning som tillhandahålls av användaren. Mer information finns i Encoding.GetPreamble metoden.

Objektet StreamReader anropar Dispose() det angivna Stream objektet när StreamReader.Dispose det anropas.

Note

När du läser från en Streamär det mer effektivt att använda en buffert som har samma storlek som strömmens interna buffert.

Caution

När du kompilerar en uppsättning tecken med en viss kulturell inställning och hämtar samma tecken med en annan kulturell inställning kanske tecknen inte kan tolkas och kan orsaka ett undantag.

En lista över vanliga I/O-uppgifter finns i Vanliga I/O-uppgifter.

Se även

Gäller för

StreamReader(Stream, Encoding, Boolean)

Källa:
StreamReader.cs
Källa:
StreamReader.cs
Källa:
StreamReader.cs
Källa:
StreamReader.cs
Källa:
StreamReader.cs

Initierar en ny instans av StreamReader klassen för den angivna strömmen med det angivna teckenkodnings- och byteordningsmarkeringsalternativet.

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)

Parametrar

stream
Stream

Strömmen som ska läsas.

encoding
Encoding

Teckenkodningen som ska användas.

detectEncodingFromByteOrderMarks
Boolean

Anger om byteordningsmarkeringar ska sökas i början av filen.

Undantag

stream stöder inte läsning.

stream eller encoding är null.

Exempel

Följande kodexempel visar den här StreamReader konstruktorn.

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

Kommentarer

Den här konstruktorn initierar kodningen enligt parametern encoding , BaseStream egenskapen med parametern stream och den interna buffertstorleken till 1 024 byte.

Parametern detectEncodingFromByteOrderMarks identifierar kodningen genom att titta på de första fyra byteen i dataströmmen. Den identifierar automatiskt UTF-8, little-endian UTF-16, big-endian UTF-16, little-endian UTF-32 och big-endian UTF-32 text om filen börjar med lämpliga byteordningsmarkeringar. I annat fall används den kodning som tillhandahålls av användaren. Mer information finns i Encoding.GetPreamble metoden.

Objektet StreamReader anropar Dispose() det angivna Stream objektet när StreamReader.Dispose det anropas.

Caution

När du kompilerar en uppsättning tecken med en viss kulturell inställning och hämtar samma tecken med en annan kulturell inställning kanske tecknen inte kan tolkas och kan orsaka ett undantag.

En lista över vanliga I/O-uppgifter finns i Vanliga I/O-uppgifter.

Se även

Gäller för

StreamReader(String, Encoding, Boolean)

Källa:
StreamReader.cs
Källa:
StreamReader.cs
Källa:
StreamReader.cs
Källa:
StreamReader.cs
Källa:
StreamReader.cs

Initierar en ny instans av StreamReader klassen för det angivna filnamnet, med det angivna teckenkodnings- och byteordningsmarkeringsidentifieringsalternativet.

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)

Parametrar

path
String

Den fullständiga filsökvägen som ska läsas.

encoding
Encoding

Teckenkodningen som ska användas.

detectEncodingFromByteOrderMarks
Boolean

Anger om byteordningsmarkeringar ska sökas i början av filen.

Undantag

path är en tom sträng ("").

path eller encoding är null.

Det går inte att hitta filen.

Den angivna sökvägen är ogiltig, till exempel på en ommappad enhet.

path innehåller en felaktig eller ogiltig syntax för filnamn, katalognamn eller volymetikett.

Exempel

Följande kodexempel visar den här StreamReader konstruktorn.

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

Kommentarer

Den här konstruktorn initierar kodningen enligt parametern encoding och den interna buffertstorleken till 1 024 byte.

Parametern detectEncodingFromByteOrderMarks identifierar kodningen genom att titta på de första fyra byteen i dataströmmen. Den identifierar automatiskt UTF-8, little-endian UTF-16, big-endian UTF-16, little-endian UTF-32 och big-endian UTF-32 text om filen börjar med lämpliga byteordningsmarkeringar. I annat fall används den kodning som tillhandahålls av användaren. Mer information finns i Encoding.GetPreamble metoden.

Parametern path kan vara ett filnamn, inklusive en fil på en UNC-resurs (Universal Naming Convention).

Parametern måste inte vara en fil som lagras på disken. Den path kan vara en del av ett system som stöder åtkomst med hjälp av strömmar.

Caution

När du kompilerar en uppsättning tecken med en viss kulturell inställning och hämtar samma tecken med en annan kulturell inställning kanske tecknen inte kan tolkas och kan orsaka ett undantag.

En lista över vanliga I/O-uppgifter finns i Vanliga I/O-uppgifter.

Se även

Gäller för

StreamReader(String, FileStreamOptions)

Källa:
StreamReader.cs
Källa:
StreamReader.cs
Källa:
StreamReader.cs
Källa:
StreamReader.cs
Källa:
StreamReader.cs

Initierar en ny instans av klassen för den angivna filsökvägen med hjälp av StreamReader standardkodningen, aktiverar identifiering av byteordningsmarkeringar i början av filen och konfigureras med det angivna FileStreamOptions objektet.

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)

Parametrar

path
String

Den fullständiga filsökvägen som ska läsas.

options
FileStreamOptions

Ett objekt som anger konfigurationsalternativen för den underliggande FileStream.

Undantag

path är inte läsbar.

-eller-

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

path eller options är null.

Det går inte att hitta filen.

Den angivna sökvägen är ogiltig, till exempel på en ommappad enhet.

path innehåller en felaktig eller ogiltig syntax för filnamn, katalognamn eller volymetikett.

Se även

Gäller för

StreamReader(String, Boolean)

Källa:
StreamReader.cs
Källa:
StreamReader.cs
Källa:
StreamReader.cs
Källa:
StreamReader.cs
Källa:
StreamReader.cs

Initierar en ny instans av StreamReader klassen för det angivna filnamnet med det angivna identifieringsalternativet byteordningsmärke.

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)

Parametrar

path
String

Den fullständiga filsökvägen som ska läsas.

detectEncodingFromByteOrderMarks
Boolean

Anger om byteordningsmarkeringar ska sökas i början av filen.

Undantag

path är en tom sträng ("").

path är null.

Det går inte att hitta filen.

Den angivna sökvägen är ogiltig, till exempel på en ommappad enhet.

path innehåller en felaktig eller ogiltig syntax för filnamn, katalognamn eller volymetikett.

Exempel

Följande kodexempel visar den här StreamReader konstruktorn.

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

Kommentarer

Den här konstruktorn initierar kodningen till UTF8Encoding, BaseStream egenskapen med parametern stream och den interna buffertstorleken till 1 024 byte.

Parametern path kan vara ett filnamn, inklusive en fil på en UNC-resurs (Universal Naming Convention).

Parametern måste inte vara en fil som lagras på disken. Den path kan vara en del av ett system som stöder åtkomst med hjälp av strömmar.

Parametern detectEncodingFromByteOrderMarks identifierar kodningen genom att titta på de första fyra byteen i dataströmmen. Den identifierar automatiskt UTF-8, little-endian UTF-16, big-endian UTF-16, little-endian UTF-32 och big-endian UTF-32 text om filen börjar med lämpliga byteordningsmarkeringar. Annars UTF8Encoding används. Mer information finns i Encoding.GetPreamble metoden.

En lista över vanliga I/O-uppgifter finns i Vanliga I/O-uppgifter.

Se även

Gäller för

StreamReader(Stream, Encoding)

Källa:
StreamReader.cs
Källa:
StreamReader.cs
Källa:
StreamReader.cs
Källa:
StreamReader.cs
Källa:
StreamReader.cs

Initierar en ny instans av StreamReader klassen för den angivna strömmen med angiven teckenkodning.

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)

Parametrar

stream
Stream

Strömmen som ska läsas.

encoding
Encoding

Teckenkodningen som ska användas.

Undantag

stream stöder inte läsning.

stream eller encoding är null.

Exempel

Följande kodexempel visar den här StreamReader konstruktorn.

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

Kommentarer

Teckenkodningen anges av parametern encoding och buffertstorleken är inställd på 1 024 byte. Objektet StreamReader försöker identifiera kodningen genom att titta på strömmens fyra första byte. Den identifierar automatiskt UTF-8, little-endian UTF-16, big-endian UTF-16, little-endian UTF-32 och big-endian UTF-32 text om filen börjar med lämpliga byteordningsmarkeringar. I annat fall används den kodning som tillhandahålls av användaren. Mer information finns i Encoding.GetPreamble metoden.

Objektet StreamReader anropar Dispose() det angivna Stream objektet när StreamReader.Dispose det anropas.

Caution

När du kompilerar en uppsättning tecken med en viss kulturell inställning och hämtar samma tecken med en annan kulturell inställning kanske tecknen inte kan tolkas och kan orsaka ett undantag.

En lista över vanliga I/O-uppgifter finns i Vanliga I/O-uppgifter.

Se även

Gäller för

StreamReader(Stream, Boolean)

Källa:
StreamReader.cs
Källa:
StreamReader.cs
Källa:
StreamReader.cs
Källa:
StreamReader.cs
Källa:
StreamReader.cs

Initierar en ny instans av StreamReader klassen för den angivna strömmen med det angivna identifieringsalternativet byteordningsmärke.

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)

Parametrar

stream
Stream

Strömmen som ska läsas.

detectEncodingFromByteOrderMarks
Boolean

Anger om byteordningsmarkeringar ska sökas i början av filen.

Undantag

stream stöder inte läsning.

stream är null.

Exempel

Följande kodexempel visar den här StreamReader konstruktorn.

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

Kommentarer

Den här konstruktorn initierar kodningen till UTF8Encoding, BaseStream egenskapen med parametern stream och den interna buffertstorleken till 1 024 byte.

Parametern detectEncodingFromByteOrderMarks identifierar kodningen genom att titta på de första fyra byteen i dataströmmen. Den identifierar automatiskt UTF-8, little-endian UTF-16, big-endian UTF-16, little-endian UTF-32 och big-endian UTF-32 text om filen börjar med lämpliga byteordningsmarkeringar. Mer information finns i Encoding.GetPreamble metoden.

Objektet StreamReader anropar Dispose() det angivna Stream objektet när StreamReader.Dispose det anropas.

En lista över vanliga I/O-uppgifter finns i Vanliga I/O-uppgifter.

Se även

Gäller för

StreamReader(String)

Källa:
StreamReader.cs
Källa:
StreamReader.cs
Källa:
StreamReader.cs
Källa:
StreamReader.cs
Källa:
StreamReader.cs

Initierar en ny instans av StreamReader klassen för det angivna filnamnet.

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

Parametrar

path
String

Den fullständiga filsökvägen som ska läsas.

Undantag

path är en tom sträng ("").

path är null.

Det går inte att hitta filen.

Den angivna sökvägen är ogiltig, till exempel på en ommappad enhet.

path innehåller en felaktig eller ogiltig syntax för filnamn, katalognamn eller volymetikett.

Exempel

Följande kodexempel visar den här StreamReader konstruktorn.

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

Kommentarer

Den fullständiga filsökvägen anges av parametern path . Den här konstruktorn initierar kodningen till UTF8Encoding och buffertstorleken till 1 024 byte.

Parametern path kan vara ett filnamn, inklusive en fil på en UNC-resurs (Universal Naming Convention).

Parametern måste inte vara en fil som lagras på disken. Den path kan vara en del av ett system som stöder åtkomst med hjälp av strömmar.

Caution

När du kompilerar en uppsättning tecken med en viss kulturell inställning och hämtar samma tecken med en annan kulturell inställning kanske tecknen inte kan tolkas och kan orsaka ett undantag.

En lista över vanliga I/O-uppgifter finns i Vanliga I/O-uppgifter.

Se även

Gäller för

StreamReader(String, Encoding)

Källa:
StreamReader.cs
Källa:
StreamReader.cs
Källa:
StreamReader.cs
Källa:
StreamReader.cs
Källa:
StreamReader.cs

Initierar en ny instans av StreamReader klassen för det angivna filnamnet med angiven teckenkodning.

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)

Parametrar

path
String

Den fullständiga filsökvägen som ska läsas.

encoding
Encoding

Teckenkodningen som ska användas.

Undantag

path är en tom sträng ("").

path eller encoding är null.

Det går inte att hitta filen.

Den angivna sökvägen är ogiltig, till exempel på en ommappad enhet.

path innehåller en felaktig eller ogiltig syntax för filnamn, katalognamn eller volymetikett.

Exempel

Följande kodexempel visar den här StreamReader konstruktorn.

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

Kommentarer

Den här konstruktorn initierar kodningen enligt parametern encoding och den interna buffertstorleken till 1 024 byte. Objektet StreamReader försöker identifiera kodningen genom att titta på strömmens fyra första byte. Den identifierar automatiskt UTF-8, little-endian UTF-16, big-endian UTF-16, little-endian UTF-32 och big-endian UTF-32 text om filen börjar med lämpliga byteordningsmarkeringar. I annat fall används den kodning som tillhandahålls av användaren. Mer information finns i Encoding.GetPreamble metoden.

Parametern path kan vara ett filnamn, inklusive en fil på en UNC-resurs (Universal Naming Convention).

Parametern måste inte vara en fil som lagras på disken. Den path kan vara en del av ett system som stöder åtkomst med hjälp av strömmar.

Caution

När du kompilerar en uppsättning tecken med en viss kulturell inställning och hämtar samma tecken med en annan kulturell inställning kanske tecknen inte kan tolkas och kan orsaka ett undantag.

En lista över vanliga I/O-uppgifter finns i Vanliga I/O-uppgifter.

Se även

Gäller för