이 페이지가 유용했습니까?
이 콘텐츠에 대한 여러분의 의견은 중요합니다. 의견을 알려주십시오.
추가 의견
1500자 남음
내보내기(0) 인쇄
모두 확장
정보
요청한 주제가 아래에 표시됩니다. 그러나 이 주제는 이 라이브러리에 포함되지 않습니다.

Single.Parse 메서드 (String)

2013-12-13

숫자의 문자열 표현을 해당하는 단정밀도 부동 소수점 숫자로 변환합니다.

Namespace:  System
어셈블리:  mscorlib(mscorlib.dll)

public static float Parse(
	string s
)

매개 변수

s
형식: System.String
변환할 숫자를 나타내는 문자열입니다.

반환 값

형식: System.Single
s에 지정된 숫자 값 또는 기호에 해당하는 단정밀도 부동 소수점 숫자입니다.

예외조건
ArgumentNullException

snull인 경우

FormatException

s의 형식이 잘못된 경우

OverflowException

sMinValue보다 작거나 MaxValue보다 큰 숫자를 나타내는 경우

s 매개 변수는 PositiveInfinitySymbol, NegativeInfinitySymbol, NaNSymbol 또는 다음과 같은 형식의 문자열을 포함할 수 있습니다.

[ws][sign] [integral-digits[,]]integral-digits[.[fractional-digits]][E[sign]exponential-digits][ws]

대괄호([ 및 ])에 있는 요소는 선택적입니다. 다음 표에서는 각 요소에 대해 설명합니다.

요소

설명

ws

공백 문자입니다.

sign

음수 부호 기호(-) 또는 양수 부호 기호(+)입니다. 유효한 부호 문자는 현재 문화권의 NumberFormatInfo.NegativeSignNumberFormatInfo.PositiveSign 속성을 통해 결정됩니다. 선행 부호만 사용할 수 있습니다.

integral-digits

숫자의 정수 부분을 지정하는 0에서 9 사이의 수열입니다. integral-digits를 쓸 때 그룹 구분 기호로 분할할 수 있습니다. 예를 들어, 일부 문화권에서는 쉼표(,)를 사용하여 1000 단위 그룹을 구분합니다. 문자열에 fractional-digits 요소가 포함된 경우 integral-digits 요소가 없을 수 있습니다.

,

문화권별 1000 단위 구분 기호입니다.

.

문화권별 소수점 기호입니다.

fractional-digits

숫자의 소수 부분을 지정하는 0에서 9 사이의 수열입니다.

E

값이 지수(공학용) 표기법으로 표현됨을 나타내는 "e" 또는 "E" 문자입니다.

exponential-digits

지수를 지정하는 0에서 9 사이의 수열입니다.

s 매개 변수는 NumberStyles.FloatNumberStyles.AllowThousands 플래그를 조합하여 해석됩니다. 즉, 통화 기호는 허용되지 않지만 공백과 1000 단위 구분 기호는 허용됩니다. s에 나타날 수 있는 통화 기호, 1000 단위 구분 기호 및 공백 등의 요소를 명시적으로 정의하려면 Parse(String, NumberStyles) 메서드 오버로드를 사용합니다.

s 매개 변수는 현재 시스템 문화권에 따라 초기화되는 NumberFormatInfo 개체의 형식 정보를 사용하여 구문 분석됩니다. 자세한 내용은 CurrentInfo를 참조하세요. 특정 문화권의 형식 정보를 사용하여 문자열을 구문 분석하려면 Parse(String, IFormatProvider) 또는 Parse(String, NumberStyles, IFormatProvider) 메서드를 사용합니다.

일반적으로 ToString 메서드를 호출하여 만든 문자열을 Parse 메서드에 전달하면 원래의 Single 값이 반환됩니다. 그러나 전체 자릿수 손실로 인해 값이 같지 않을 수도 있습니다.

구문 분석 작업 중 s 매개 변수에서 구분 기호가 발견되고 적용 가능한 통화 또는 숫자의 소수 및 그룹 구분 기호가 같으면, 구문 분석 작업에서 구분 기호는 그룹 구분 기호가 아니라 소수 구분 기호로 간주됩니다. 구분 기호에 대한 자세한 내용은 CurrencyDecimalSeparator, NumberDecimalSeparator, CurrencyGroupSeparatorNumberGroupSeparator를 참조하세요.

다음 예제에서는 Parse(String) 메서드를 사용하여 문자열 배열을 해당 Single 값으로 변환합니다.


using System;

public class Example
{
   public static void Demo(System.Windows.Controls.TextBlock outputBlock)
   {
      string[] values = { "100", "(100)", "-123,456,789", "123.45e+6", 
                          "+500", "5e2", "3.1416", "600.", "-.123", 
                          "-Infinity", "-1E-16", Double.MaxValue.ToString(), 
                          Single.MinValue.ToString(), String.Empty };
      foreach (string value in values)
      {
         try
         {
            float number = Single.Parse(value);
            outputBlock.Text += String.Format("{0} -> {1}", value, number) + "\n";
         }
         catch (FormatException)
         {
            outputBlock.Text += String.Format("'{0}' is not in a valid format.", value) + "\n";
         }
         catch (OverflowException)
         {
            outputBlock.Text += String.Format("{0} is outside the range of a Single.", value) + "\n";
         }
      }
   }
}
// The example displays the following output:
//       100 -> 100
//       '(100)' is not in a valid format.
//       -123,456,789 -> -1.234568E+08
//       123.45e+6 -> 1.2345E+08
//       +500 -> 500
//       5e2 -> 500
//       3.1416 -> 3.1416
//       600. -> 600
//       -.123 -> -0.123
//       -Infinity -> -Infinity
//       -1E-16 -> -1E-16
//       1.79769313486232E+308 is outside the range of a Single.
//       -3.402823E+38 -> -3.402823E+38
//       '' is not in a valid format.


Windows Phone OS

지원되는 버전: 8.0, 7.1, 7.0

Windows Phone

표시:
© 2015 Microsoft