Constructs and initializes a new instance of the System.IO.StreamReader class for the specified file name, with the specified character encoding and byte order mark detection option.
- path
- A string that specifies the complete file path to read.
- encoding
- A System.Text.Encoding that specifies the character encoding to use.
- detectEncodingFromByteOrderMarks
- A bool value that indicates whether the new System.IO.StreamReaderis required to look for byte order marks at the beginning of the stream. Specify true to enable detection of byte order marks; otherwise, specify false .
Type Reason System.IO.IOException path is in an invalid format or contains invalid characters. System.IO.DirectoryNotFoundException The directory information specified in path was not found. System.IO.FileNotFoundException The file specified in path was not found. ArgumentException path is an empty string (""). ArgumentNullException path or encoding is null .
This constructor initializes the StreamReader.CurrentEncoding property using encoding , and the internal buffer to the default size.
Note: The default buffer size is implementation defined.If requested, the current constructor detects the encoding by examining the first three bytes of the stream. The constructor automatically recognizes UTF-8, little-endian Unicode, and big-endian Unicode text if the file starts with the appropriate byte order marks. Otherwise, the user-provided encoding is used. See the System.Text.Encoding.GetPreamble method for more information.
Note:path is not required to be a file stored on disk; it can be any part of a system that supports access via streams. For example, depending on the system, this class might be able to access a physical device.
For information on the valid format and characters for path strings, see System.IO.Path.
Namespace: System.IO
Assembly: mscorlib (in mscorlib.dll)
Assembly Versions: 1.0.5000.0, 2.0.0.0