이 문서는 기계 번역을 이용하여 번역되었습니다. 문서를 영문으로 보려면 영문 확인란을 선택하세요. 마우스 포인터를 텍스트 위로 이동시켜 팝업 창에서 영문 텍스트를 표시할 수도 있습니다.
번역
영문

IFormattable.ToString 메서드 (String, IFormatProvider)

 

게시 날짜: 2016년 11월

지정된 형식을 사용하여 현재 인스턴스 값의 형식을 지정합니다.

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

string ToString(
	string format,
	IFormatProvider formatProvider
)

매개 변수

format
Type: System.String

사용할 형식입니다.

또는

IFormattable 구현의 형식에 대해 정의된 기본 형식을 사용하려는 경우 null 참조(Visual Basic의 경우 Nothing)입니다.

formatProvider
Type: System.IFormatProvider

값의 형식을 지정하는 데 사용할 공급자입니다.

또는

운영 체제의 현재 로캘 설정에서 숫자 형식 정보를 가져오려는 경우 null 참조(Visual Basic의 경우 Nothing)입니다.

반환 값

Type: System.String

지정된 형식의 현재 인스턴스 값입니다.

ToString 메서드 값을 여러 가지 방법으로 표현할 수 있는 문자열 표현으로 변환 합니다. 정확한 형식은 특정 기호 또는 특정 문화권, 직업 또는 산업에 정의 된 순서에 따라 달라 집니다. 메서드를 직접 호출할 수 있습니다. 자동으로 호출 또한는 Convert.ToString(Object)Convert.ToString(Object, IFormatProvider) 메서드 및 복합 형식 지정을 사용 하는 메서드에서 기능.NET Framework에서와 같은 String.Format(String, Object[]), Console.WriteLine(String, Object[]), 및 StringBuilder.AppendFormat(String, Object[])합니다. 자세한 내용은 복합 형식 지정을 참조하세요.

합성 메서드 호출의 서식 지정은 ToString 형식 문자열의 각 형식 항목에 대해 한 번씩 메서드. 메서드에 전달 된 매개 변수에 따라 달라 집니다 특정 형식 지정 메서드가 호출 되는 서식 항목의 내용에 다음과 같이:

  • 형식 항목이 형식 문자열을 포함 하지 않을 경우 (서식 항목은 단순히 하는 경우에 예를 들어 {0}), 전달 된 null 의 값으로는 System.String 매개 변수입니다.

  • 형식 항목에 형식 문자열을 포함 하는 경우 (예를 들어 {0:G}), 형식 문자열의 값으로 전달 되는 System.String 매개 변수입니다.

  • 원래 메서드 호출에 포함 되어 있지 않으면는 System.IFormatProvider 매개 변수를 CultureInfo.CurrentCulture 의 값으로 전달 되는 System.IFormatProvider 매개 변수입니다.

  • 원래 메서드 호출을 포함 하는 경우는 System.IFormatProvider 매개 변수를 메서드 호출에서 제공 되는 공급자의 값으로 전달 되는 System.IFormatProvider 매개 변수입니다.

System_CAPS_note참고

개체의 ToString 전달 되지 않은 경우에 복합 서식 지정 메서드에 의해 호출 됩니다는 ICustomFormatter 형식 공급자 또는 경우에는 Format 사용자 지정 형식 공급자의 반환 null합니다.

모두 구현 하는 세 가지 형식 공급자를 포함 하는.NET Framework는 IFormatProvider 인터페이스:

  • NumberFormatInfo숫자 형식 지정 정보를 그룹 구분 기호 및 소수에 사용할 문자 등 맞춤법 및 통화 값의 통화 기호 위치를 제공 합니다.

  • DateTimeFormatInfo월, 일, 연도 패턴의 위치와 같은 날짜 및 시간 관련 형식 지정 정보를 제공합니다.

  • CultureInfo기본 숫자 형식 정보를 포함 하 여 특정 문화권의 정보와 날짜 및 시간 관련 형식 지정 정보를 서식 지정을 포함 합니다.

또한 사용자 고유의 사용자 지정 형식 공급자를 정의할 수 있습니다.

구현자 참고 사항:

ToString 메서드 "G" (일반) 형식 지정자를 지원 해야 합니다. "G" 지정자 외 클래스에는 지원 되는 형식 지정자의 목록을 정의할 수 있습니다. 클래스 형식 지정자에 처리 하도록 준비 해야 또한 null합니다. 서식 지정 및 형식 지정 코드에 대 한 자세한 내용은 참조 .NET Framework의 형식 서식 지정합니다.

다음 예제는 Temperature 구현 하는 클래스는 ToString 메서드. 이 코드 예제는에 대해 제공 된 큰 예제의 일부는 IFormattable 클래스입니다.

using System;
using System.Globalization;

public class Temperature : IFormattable
{
   private decimal temp;

   public Temperature(decimal temperature)
   {
      if (temperature < -273.15m) 
        throw new ArgumentOutOfRangeException(String.Format("{0} is less than absolute zero.", 
                                              temperature));
      this.temp = temperature;
   }

   public decimal Celsius
   {
      get { return temp; }
   }

   public decimal Fahrenheit
   {
      get { return temp * 9 / 5 + 32; }
   }

   public decimal Kelvin
   {
      get { return temp + 273.15m; }
   }

   public override string ToString()
   {
      return this.ToString("G", CultureInfo.CurrentCulture);
   }

   public string ToString(string format)
   {
      return this.ToString(format, CultureInfo.CurrentCulture);
   }

   public string ToString(string format, IFormatProvider provider) 
   {
      if (String.IsNullOrEmpty(format)) format = "G";
      if (provider == null) provider = CultureInfo.CurrentCulture;

      switch (format.ToUpperInvariant())
      {
         case "G":
         case "C":
            return temp.ToString("F2", provider) + " °C"; 
         case "F":
            return Fahrenheit.ToString("F2", provider) + " °F";
         case "K":
            return Kelvin.ToString("F2", provider) + " K";
         default:
            throw new FormatException(String.Format("The {0} format string is not supported.", format));
      }
   }
}

유니버설 Windows 플랫폼
8 이후 사용 가능
.NET Framework
1.1 이후 사용 가능
이식 가능한 클래스 라이브러리
이식 가능한 .NET 플랫폼 에서 지원됨
Silverlight
2.0 이후 사용 가능
Windows Phone Silverlight
7.0 이후 사용 가능
Windows Phone
8.1 이후 사용 가능
맨 위로 이동
표시: