다음을 통해 공유


Exception.ToString 메서드

현재 예외에 대한 문자열 표현을 만들고 반환합니다.

네임스페이스: System
어셈블리: mscorlib(mscorlib.dll)

구문

‘선언
Public Overrides Function ToString As String
‘사용 방법
Dim instance As Exception
Dim returnValue As String

returnValue = instance.ToString
public override string ToString ()
public:
virtual String^ ToString () override
public String ToString ()
public override function ToString () : String

반환 값

현재 예외에 대한 문자열 표현입니다.

설명

ToString은 사용자가 이해할 수 있는 현재 예외에 대한 표현을 반환합니다. 예외에 culture에 맞는 데이터가 포함된 경우 ToString이 반환한 문자열 표현은 현재 시스템 culture를 고려할 필요가 있습니다. 반환된 문자열의 형식에 대한 정확한 요구가 없더라도, 개체의 값을 사용자가 인식한 대로 나타내려고 노력해야 합니다.

ToString의 기본 구현은 현재 예외를 throw하는 클래스의 이름, 메시지, 내부 예외에서 ToString을 호출한 결과, Environment.StackTrace를 호출한 결과 등을 얻습니다. 이러한 멤버가 Null 참조(Visual Basic의 경우 Nothing)이면 값은 반환된 문자열에 포함되지 않습니다.

오류 메시지가 없거나 빈 문자열("")인 경우 오류 메시지가 반환되지 않습니다. Null 참조(Visual Basic의 경우 Nothing)가 아닌 경우에만 내부 예외의 이름과 스택 추적이 반환됩니다.

이 메서드는 Object.ToString을 재정의합니다.

예제

다음 예는 예외를 발생시키고 그 예외에서 ToString을 호출한 결과를 표시합니다.

Imports System

Public Class [MyClass]
End Class '[MyClass]

Public Class ArgExceptionExample
   
   Public Shared Sub Main()
      Dim my As New [MyClass]()
      Dim s As String = "sometext"
      Try
         Dim i As Integer = s.CompareTo(my)
      Catch e As Exception
         Console.WriteLine("Error: {0}", e.ToString())
      End Try
   End Sub 'Main
End Class 'ArgExceptionExample
using System;

public class MyClass {}
public class ArgExceptionExample 
   {
   public static void Main()
      {
      MyClass my = new MyClass();
      string s = "sometext";
      try 
         {
         int i = s.CompareTo(my);
         }
            catch (Exception e) 
            {
            Console.WriteLine("Error: {0}",e.ToString());
            }
      }
}
using namespace System;
public ref class MyClass{};

int main()
{
   MyClass^ my = gcnew MyClass;
   String^ s = "sometext";
   try
   {
      int i = s->CompareTo( my );
   }
   catch ( Exception^ e ) 
   {
      Console::WriteLine( "Error: {0}", e->ToString() );
   }

}
import System.*;

public class MyClass
{
} //MyClass

public class ArgExceptionExample
{
    public static void main(String[] args)
    {
        MyClass my = new MyClass();
        String s = "sometext";
        try {
            int i = s.CompareTo(my);
        }
        catch (System.Exception e) {
            Console.WriteLine("Error: {0}", e.ToString());
        }
    } //main
} //ArgExceptionExample
import System;

public class MyClass {}
public class ArgExceptionExample 
   {
   public static function Main()
      {
      var my : MyClass = new MyClass();
      var s : String = "sometext";
      try 
         {
         var i : int = s.CompareTo(my);
         }
     catch (e : Exception) 
         {
         Console.WriteLine("Error: {0}",e.ToString());
         }
      }
}

이 코드는 다음과 같이 출력됩니다.

Error: System.ArgumentException: Object must be of type String. at System.String.CompareTo(Object value) at ArgExceptionExample.Main()

플랫폼

Windows 98, Windows 2000 SP4, Windows CE, Windows Millennium Edition, Windows Mobile for Pocket PC, Windows Mobile for Smartphone, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition

.NET Framework에서 모든 플래폼의 모든 버전을 지원하지는 않습니다. 지원되는 버전의 목록은 시스템 요구 사항을 참조하십시오.

버전 정보

.NET Framework

2.0, 1.1, 1.0에서 지원

.NET Compact Framework

2.0, 1.0에서 지원

참고 항목

참조

Exception 클래스
Exception 멤버
System 네임스페이스