This topic has not yet been rated - Rate this topic

BinaryWriter.Write Method (Byte[], Int32, Int32)

Writes a region of a byte array to the current stream.

Namespace:  System.IO
Assembly:  mscorlib (in mscorlib.dll)
public virtual void Write(
	byte[] buffer,
	int index,
	int count
)

Parameters

buffer
Type: System.Byte[]

A byte array containing the data to write.

index
Type: System.Int32

The starting point in buffer at which to begin writing.

count
Type: System.Int32

The number of bytes to write.

ExceptionCondition
ArgumentException

The buffer length minus index is less than count.

ArgumentNullException

buffer is null.

ArgumentOutOfRangeException

index or count is negative.

IOException

An I/O error occurs.

ObjectDisposedException

The stream is closed.

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

The following code example shows how to write binary data using memory as a backing store, and then verify that the data was written correctly.

using System;
using System.IO;

namespace BinaryRW
{
    class Program
    {
        static void Main(string[] args)
        {
            const int arrayLength = 1000;
            byte[] dataArray = new byte[arrayLength];
            byte[] verifyArray = new byte[arrayLength];

            new Random().NextBytes(dataArray);

            using (BinaryWriter binWriter = new BinaryWriter(new MemoryStream()))
            {
                Console.WriteLine("Writing the data.");
                binWriter.Write(dataArray, 0, arrayLength);

                using (BinaryReader binReader = new BinaryReader(binWriter.BaseStream))
                {
                    binReader.BaseStream.Position = 0;

                    if (binReader.Read(verifyArray, 0, arrayLength) != arrayLength)
                    {
                        Console.WriteLine("Error writing the data.");
                        return;
                    }
                }
            }

            for (int i = 0; i < arrayLength; i++)
            {
                if (verifyArray[i] != dataArray[i])
                {
                    Console.WriteLine("Error writing the data.");
                    return;
                }
            }

            Console.WriteLine("The data was written and verified.");
        }
    }
}

.NET Framework

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

.NET Framework Client Profile

Supported in: 4, 3.5 SP1

Portable Class Library

Supported in: Portable Class Library

.NET for Windows Store apps

Supported in: Windows 8

Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (Server Core Role not supported), Windows Server 2008 R2 (Server Core Role supported with SP1 or later; Itanium not supported)

The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.

Did you find this helpful?
(1500 characters remaining)
© 2013 Microsoft. All rights reserved.