EndOfStreamException Class
[ This article is for Windows Phone 8 developers. If you’re developing for Windows 10, see the latest documentation. ]
The exception that is thrown when reading is attempted past the end of a stream.
System.Exception
System.SystemException
System.IO.IOException
System.IO.EndOfStreamException
Assembly: mscorlib (in mscorlib.dll)
The EndOfStreamException type exposes the following members.
| Name | Description | |
|---|---|---|
![]() | EndOfStreamException() | Initializes a new instance of the EndOfStreamException class with its message string set to a system-supplied message. |
![]() | EndOfStreamException(String) | Initializes a new instance of the EndOfStreamException class with its message string set to message and its HRESULT set to COR_E_ENDOFSTREAM. |
![]() | EndOfStreamException(String, Exception) | Initializes a new instance of the EndOfStreamException class with a specified error message and a reference to the inner exception that is the cause of this exception. |
| Name | Description | |
|---|---|---|
![]() | Data | Gets a collection of key/value pairs that provide additional user-defined information about the exception. (Inherited from Exception.) |
![]() | HelpLink | Gets or sets a link to the help file associated with this exception. (Inherited from Exception.) |
![]() | HResult | Gets or sets HRESULT, a coded numerical value that is assigned to a specific exception. (Inherited from Exception.) |
![]() | InnerException | Gets the Exception instance that caused the current exception. (Inherited from Exception.) |
![]() | Message | Gets a message that describes the current exception. (Inherited from Exception.) |
![]() | Source | Gets or sets the name of the application or the object that causes the error. (Inherited from Exception.) |
![]() | StackTrace | Gets a string representation of the frames on the call stack at the time the current exception was thrown. (Inherited from Exception.) |
| Name | Description | |
|---|---|---|
![]() | Equals(Object) | Determines whether the specified Object is equal to the current Object. (Inherited from Object.) |
![]() | Finalize | Allows an object to try to free resources and perform other cleanup operations before the Object is reclaimed by garbage collection. (Inherited from Object.) |
![]() | GetBaseException | When overridden in a derived class, returns the Exception that is the root cause of one or more subsequent exceptions. (Inherited from Exception.) |
![]() | GetHashCode | Serves as a hash function for a particular type. (Inherited from Object.) |
![]() | GetType | Gets the runtime type of the current instance. (Inherited from Exception.) |
![]() | MemberwiseClone | Creates a shallow copy of the current Object. (Inherited from Object.) |
![]() | ToString | Creates and returns a string representation of the current exception. (Inherited from Exception.) |
The following code example shows how to read and write Double data to memory by using the BinaryReader and BinaryWriter classes on top of the MemoryStream class.
Note: |
|---|
To run this example, see Building examples that have static TextBlock controls for Windows Phone 8. |
using System; using System.IO; class Example { public static void Demo(System.Windows.Controls.TextBlock outputBlock) { int i; const int arrayLength = 1000; // Create random data to write to the stream. Random randomGenerator = new Random(); double[] dataArray = new double[arrayLength]; for (i = 0; i < arrayLength; i++) { dataArray[i] = 100.1 * randomGenerator.NextDouble(); } using (BinaryWriter binWriter = new BinaryWriter(new MemoryStream())) { // Write the data to the stream. outputBlock.Text += "Writing data to the stream." + "\n"; for (i = 0; i < arrayLength; i++) { binWriter.Write(dataArray[i]); } // Create a reader using the stream from the writer. using (BinaryReader binReader = new BinaryReader(binWriter.BaseStream)) { try { // Return to the beginning of the stream. binReader.BaseStream.Position = 0; // Read and verify the data. outputBlock.Text += "Verifying the written data." + "\n"; for (i = 0; i < arrayLength; i++) { if (binReader.ReadDouble() != dataArray[i]) { outputBlock.Text += "Error writing data." + "\n"; break; } } outputBlock.Text += "The data was written " + "and verified." + "\n"; } catch (EndOfStreamException e) { outputBlock.Text += String.Format("Error writing data: {0}.", e.GetType().Name) + "\n"; } } } } }



Note: