.NET Framework Class Library
IOException Class

The exception that is thrown when an I/O error occurs.

Namespace:  System.IO
Assembly:  mscorlib (in mscorlib.dll)
Syntax

Visual Basic (Declaration)
<SerializableAttribute> _
<ComVisibleAttribute(True)> _
Public Class IOException _
    Inherits SystemException
Visual Basic (Usage)
Dim instance As IOException
C#
[SerializableAttribute]
[ComVisibleAttribute(true)]
public class IOException : SystemException
Visual C++
[SerializableAttribute]
[ComVisibleAttribute(true)]
public ref class IOException : public SystemException
JScript
public class IOException extends SystemException
Remarks

IOException is the base class for exceptions thrown while accessing information using streams, files and directories.

The Base Class Library includes the following types, each of which is a derived class of IOException :

Where appropriate, use these types instead of IOException.

IOException uses the HRESULT COR_E_IO which has the value 0x80131620.

Examples

This code example is part of a larger example provided for the FileStream..::.Lock method.

Visual Basic
' Catch the IOException generated if the 
' specified part of the file is locked.
Catch ex As IOException
    Console.WriteLine( _
        "{0}: The write operation could " & _
        "not be performed because the " & _
        "specified part of the file is " & _
        "locked.", ex.GetType().Name)
End Try
C#
// Catch the IOException generated if the 
// specified part of the file is locked.
catch(IOException e)
{
    Console.WriteLine(
        "{0}: The write operation could not " +
        "be performed because the specified " +
        "part of the file is locked.", 
        e.GetType().Name);
}
Visual C++
// Catch the IOException generated if the 
// specified part of the file is locked.
catch ( IOException^ e ) 
{
   Console::WriteLine( "{0}: The write operation could not "
   "be performed because the specified "
   "part of the file is locked.", e->GetType()->Name );
}


Inheritance Hierarchy

System..::.Object
  System..::.Exception
    System..::.SystemException
      System.IO..::.IOException
        System.IO..::.DirectoryNotFoundException
        System.IO..::.DriveNotFoundException
        System.IO..::.EndOfStreamException
        System.IO..::.FileLoadException
        System.IO..::.FileNotFoundException
        System.IO..::.PathTooLongException
        System.IO..::.PipeException
Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.
Platforms

Windows 7, Windows Vista, Windows XP SP2, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP Starter Edition, Windows Server 2008 R2, Windows Server 2008, Windows Server 2003, Windows Server 2000 SP4, Windows Millennium Edition, Windows 98, Windows CE, Windows Mobile for Smartphone, Windows Mobile for Pocket PC, Xbox 360, Zune

The .NET Framework and .NET Compact Framework do not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.
Version Information

.NET Framework

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

.NET Compact Framework

Supported in: 3.5, 2.0, 1.0

XNA Framework

Supported in: 3.0, 2.0, 1.0
See Also

Reference

Other Resources

Tags :


Community Content

yury-g
Other case when this exception is thrown

This type of exception is also thrown when a file is being used by another process although I could not find any other differentiation of this case from the others except parsing IOException.Message which might be inappropriate and inefficient in terms of compatibility with future versions of .Net framework.


Page view tracker