CSharp · Console
using System;
public class Program
{
public static void Main()
{
byte[] buffer = new byte[100];
using (var ms = new System.IO.MemoryStream(buffer, 10, buffer.Length - 10, true))
{
//
// Let the private MemoryStream._position field overflow
//
var newPosition = int.MaxValue - 9;
ms.Position = newPosition;
System.Console.WriteLine("ms.Position == newPosition: " + (ms.Position == newPosition));
System.Console.WriteLine();
System.Console.WriteLine("ReadByte");
try
{
var b = ms.ReadByte();
System.Console.WriteLine("ms.ReadByte() returned " + b);
}
catch (System.Exception ex)
{
System.Console.WriteLine(ex);
}
System.Console.WriteLine();
System.Console.WriteLine("WriteByte");
try
{
ms.WriteByte(0);
}
catch (System.Exception ex)
{
System.Console.WriteLine(ex);
}
}
}
}