Skip to main content
.NET Framework Class Library
BinaryWriter Constructor (Stream)

Initializes a new instance of the BinaryWriter class based on the specified stream and using UTF-8 encoding.

Namespace:   System.IO
Assemblies:   System.IO (in System.IO.dll)
  mscorlib (in mscorlib.dll)
Syntax
Public Sub New ( _
	output As [%$TOPIC/atxb4f07_en-us_VS_110_2_0_0_0_0%] _
)
public BinaryWriter(
	[%$TOPIC/atxb4f07_en-us_VS_110_2_0_1_0_0%] output
)
public:
BinaryWriter(
	[%$TOPIC/atxb4f07_en-us_VS_110_2_0_2_0_0%]^ output
)
new : 
        output:[%$TOPIC/atxb4f07_en-us_VS_110_2_0_3_0_0%] -> BinaryWriter
public function [%$TOPIC/atxb4f07_en-us_VS_110_2_0_4_0_0%](
	output : [%$TOPIC/atxb4f07_en-us_VS_110_2_0_4_0_1%]
)

Parameters

output
Type: System.IOStream

The output stream.

Exceptions
ExceptionCondition
ArgumentException

The stream does not support writing or is already closed.

ArgumentNullException

output is .

Remarks

For a list of common I/O tasks, see Common I/O Tasks.

Examples

The following code example demonstrates how to store and retrieve application settings in a file.

Imports System.IO

Module Module1
    Const fileName As String = "AppSettings.dat" 

    Sub Main()
        WriteDefaultValues()
        DisplayValues()
    End Sub 

    Sub WriteDefaultValues()
        Using writer As BinaryWriter = New BinaryWriter(File.Open(fileName, FileMode.Create))
            writer.Write(1.25F)
            writer.Write("c:\Temp")
            writer.Write(10)
            writer.Write(True)
        End Using 
    End Sub 

    Sub DisplayValues()
        Dim aspectRatio As Single 
        Dim tempDirectory As String 
        Dim autoSaveTime As Integer 
        Dim showStatusBar As Boolean 

        If (File.Exists(fileName)) Then 

            Using reader As BinaryReader = New BinaryReader(File.Open(fileName, FileMode.Open))
                aspectRatio = reader.ReadSingle()
                tempDirectory = reader.ReadString()
                autoSaveTime = reader.ReadInt32()
                showStatusBar = reader.ReadBoolean()
            End Using

            Console.WriteLine("Aspect ratio set to: " & aspectRatio)
            Console.WriteLine("Temp directory is: " & tempDirectory)
            Console.WriteLine("Auto save time set to: " & autoSaveTime)
            Console.WriteLine("Show status bar: " & showStatusBar)
        End If 
    End Sub 

End Module
using System;
using System.IO;

class ConsoleApplication
{
    const string fileName = "AppSettings.dat";

    static void Main()
    {
        WriteDefaultValues();
        DisplayValues();
    }

    public static void WriteDefaultValues()
    {
        using (BinaryWriter writer = new BinaryWriter(File.Open(fileName, FileMode.Create)))
        {
            writer.Write(1.250F);
            writer.Write(@"c:\Temp");
            writer.Write(10);
            writer.Write(true);
        }
    }

    public static void DisplayValues()
    {
        float aspectRatio;
        string tempDirectory;
        int autoSaveTime;
        bool showStatusBar;

        if (File.Exists(fileName))
        {
            using (BinaryReader reader = new BinaryReader(File.Open(fileName, FileMode.Open)))
            {
                aspectRatio = reader.ReadSingle();
                tempDirectory = reader.ReadString();
                autoSaveTime = reader.ReadInt32();
                showStatusBar = reader.ReadBoolean();
            }

            Console.WriteLine("Aspect ratio set to: " + aspectRatio);
            Console.WriteLine("Temp directory is: " + tempDirectory);
            Console.WriteLine("Auto save time set to: " + autoSaveTime);
            Console.WriteLine("Show status bar: " + showStatusBar);
        }
    }
}
Version Information

.NET Framework

Supported in: 4.6, 4.5, 4, 3.5, 3.0, 2.0, 1.1

.NET Framework Client Profile

Supported in: 4, 3.5 SP1

XNA Framework

Supported in: 3.0, 2.0, 1.0

Portable Class Library

Supported in: Portable Class Library

Supported in: Windows Phone 8.1

Supported in: Windows Phone Silverlight 8.1

Supported in: Windows Phone Silverlight 8