BinaryWriter.Write Method (Byte[], Int32, Int32)
.NET Framework 3.0
Writes a region of a byte array to the current stream.
Namespace: System.IO
Assembly: mscorlib (in mscorlib.dll)
Assembly: mscorlib (in mscorlib.dll)
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."); } }
import System.*;
import System.IO.*;
class BinaryRW
{
public static void main(String[] args)
{
final int arrayLength = 1000;
// Create random data to write to the stream.
ubyte dataArray[] = new ubyte[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.get_BaseStream());
// Set Position to the beginning of the stream.
binReader.get_BaseStream().set_Position(0);
// Read and verify the data.
ubyte verifyArray[] = new ubyte[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.");
} //main
} //BinaryRW
Windows 98, Windows Server 2000 SP4, Windows Millennium Edition, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
The Microsoft .NET Framework 3.0 is supported on Windows Vista, Microsoft Windows XP SP2, and Windows Server 2003 SP1.