BinaryWriter.Write Method (Byte[], Int32, Int32)
.NET Framework 4
Writes a region of a byte array to the current stream.
Assembly: mscorlib (in mscorlib.dll)
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.
| Exception | Condition |
|---|---|
| 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; class BinaryRW { static void Main() { const int arrayLength = 1000; // Create random data to write to the stream. byte[] dataArray = new byte[arrayLength]; new Random().NextBytes(dataArray); BinaryWriter binWriter = new BinaryWriter(new MemoryStream()); // Write the data to the stream. Console.WriteLine("Writing the data."); binWriter.Write(dataArray, 0, arrayLength); // Create the reader using the stream from the writer. BinaryReader binReader = new BinaryReader(binWriter.BaseStream); // Set Position to the beginning of the stream. binReader.BaseStream.Position = 0; // Read and verify the data. byte[] verifyArray = new byte[arrayLength]; 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."); } }
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.