StreamReader Constructor (String, Boolean)
Microsoft Silverlight will reach end of support after October 2021. Learn more.
When it is called by trusted applications, initializes a new instance of the StreamReader class for the specified file name, using the specified byte order mark detection option.
Namespace: System.IO
Assembly: mscorlib (in mscorlib.dll)
Syntax
'Declaration
Public Sub New ( _
path As String, _
detectEncodingFromByteOrderMarks As Boolean _
)
public StreamReader(
string path,
bool detectEncodingFromByteOrderMarks
)
Parameters
- path
Type: System.String
The complete file path to be read.
- detectEncodingFromByteOrderMarks
Type: System.Boolean
true to look for byte order marks at the beginning of the file; otherwise, false.
Exceptions
Exception | Condition |
---|---|
ArgumentException | path is an empty string (""). |
ArgumentNullException | path is nulla null reference (Nothing in Visual Basic). |
FileNotFoundException | The file cannot be found. |
DirectoryNotFoundException | The specified path is invalid; for example, it might refer to an unmapped drive. |
IOException | path includes an incorrect or invalid syntax for file name, directory name, or volume label. |
Remarks
This constructor initializes the encoding to UTF8Encoding, the BaseStream property using the stream parameter, and the internal buffer to the default size.
The path parameter can be a file name, including a file on a Universal Naming Convention (UNC) share.
The path parameter is not required to be a file stored on disk; it can be any part of a system that supports access using streams.
The detectEncodingFromByteOrderMarks parameter detects the encoding by looking at the first three bytes of the stream. It 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 Encoding.GetPreamble method for more information.
Platform Notes
Silverlight for Windows Phone
This member has a SecurityCriticalAttribute attribute on Silverlight for Windows Phone, because the attribute was present in Silverlight 3. This attribute restricts this member to internal use. Application code that uses this member throws a MethodAccessException.
Version Information
Silverlight
Supported in: 5, 4, 3
Silverlight for Windows Phone
Supported in: Windows Phone OS 7.1, Windows Phone OS 7.0
XNA Framework
Supported in: Xbox 360, Windows Phone OS 7.0
Platforms
For a list of the operating systems and browsers that are supported by Silverlight, see Supported Operating Systems and Browsers.