.NET Framework Class Library
BinaryReader.ReadBoolean Method
Reads a Boolean value from the current stream and advances the current position of the stream by one byte.
Assembly: mscorlib (in mscorlib.dll)
Syntax
Visual Basic
Public Overridable Function ReadBoolean As Boolean
C#
public virtual bool ReadBoolean()
Visual C++
public: virtual bool ReadBoolean()
F#
abstract ReadBoolean : unit -> bool override ReadBoolean : unit -> bool
Exceptions
| Exception | Condition |
|---|---|
| EndOfStreamException |
The end of the stream is reached. |
| ObjectDisposedException |
The stream is closed. |
| IOException |
An I/O error occurs. |
Remarks
BinaryReader does not restore the file position after an unsuccessful read.
For a list of common I/O tasks, see Common I/O Tasks.
Examples
This code example is part of a larger example provided for the BinaryReader class.
Visual Basic
Dim binReader As New BinaryReader( _ File.Open(fileName, FileMode.Open)) Try ' If the file is not empty, ' read the application settings. ' First read 4 bytes into a buffer to ' determine if the file is empty. Dim testArray As Byte() = {0,0,0,0} Dim count As Integer = binReader.Read(testArray, 0, 3) If count <> 0 Then ' Reset the position in the stream to zero. binReader.BaseStream.Seek(0, SeekOrigin.Begin) aspRatio = binReader.ReadSingle() lkupDir = binReader.ReadString() saveTime = binReader.ReadInt32() statusBar = binReader.ReadBoolean() Return End If ' If the end of the stream is reached before reading ' the four data values, ignore the error and use the ' default settings for the remaining values. Catch ex As EndOfStreamException Console.WriteLine("{0} caught and ignored. " & _ "Using default values.", ex.GetType().Name) Finally binReader.Close() End Try
C#
BinaryReader binReader =
new BinaryReader(File.Open(fileName, FileMode.Open));
try
{
// If the file is not empty,
// read the application settings.
// First read 4 bytes into a buffer to
// determine if the file is empty.
byte[] testArray = new byte[3];
int count = binReader.Read(testArray, 0, 3);
if (count != 0)
{
// Reset the position in the stream to zero.
binReader.BaseStream.Seek(0, SeekOrigin.Begin);
aspectRatio = binReader.ReadSingle();
lookupDir = binReader.ReadString();
autoSaveTime = binReader.ReadInt32();
showStatusBar = binReader.ReadBoolean();
}
}
// If the end of the stream is reached before reading
// the four data values, ignore the error and use the
// default settings for the remaining values.
catch(EndOfStreamException e)
{
Console.WriteLine("{0} caught and ignored. " +
"Using default values.", e.GetType().Name);
}
finally
{
binReader.Close();
}
Visual C++
BinaryReader^ binReader = gcnew BinaryReader( File::Open( fileName, FileMode::Open ) );
try
{
// If the file is not empty,
// read the application settings.
// First read 4 bytes into a buffer to
// determine if the file is empty.
array<Byte>^testArray = gcnew array<Byte>(3);
int count = binReader->Read(testArray, 0, 3);
if ( count != -1 )
{
// Reset the position in the stream to zero.
binReader->BaseStream->Seek(0, SeekOrigin::Begin);
aspectRatio = binReader->ReadSingle();
lookupDir = binReader->ReadString();
autoSaveTime = binReader->ReadInt32();
showStatusBar = binReader->ReadBoolean();
return;
}
}
// If the end of the stream is reached before reading
// the four data values, ignore the error and use the
// default settings for the remaining values.
catch ( EndOfStreamException^ e )
{
Console::WriteLine( "{0} caught and ignored. "
"Using default values.", e->GetType()->Name );
}
finally
{
binReader->Close();
}
Version Information
.NET Framework
Supported in: 4, 3.5, 3.0, 2.0, 1.1, 1.0.NET Framework Client Profile
Supported in: 4, 3.5 SP1Portable Class Library
Supported in: Portable Class LibraryPlatforms
Windows 7, Windows Vista SP1 or later, Windows XP SP3, Windows XP SP2 x64 Edition, Windows Server 2008 (Server Core not supported), Windows Server 2008 R2 (Server Core supported with SP1 or later), Windows Server 2003 SP2
The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.
See Also