2016-07-19 2 views
0

라이브러리를 C# 코드와 통합하려고합니다. 라이브러리에서 사용하고있는 10 진수 매개 변수가 있습니다. 매개 변수는 보통 0.24756400과 같은 일반적인 십진수 값을 반환합니다. 그러나 때로는 0E-8과 같은 지수 형식으로 값을 반환합니다.C#의 지수 값 확인

내가 예를 들어 내가 이런 식의 구문을 분석 할 때, 내 코드의 매개 변수를 처리하려고 : 그것은 나에게 예외를 제공

Decimal.Parse(paymentAuth.IyziCommissionFee);) 

개체 참조가 개체의 인스턴스로 설정되지 않았습니다) 값이 지수 형식 인 경우.

값 형식 (숫자 또는 지수)을 식별 할 수 있으면이를 관리 할 수 ​​있습니다.

그렇다면 값이 지수 형식인지 어떻게 확인할 수 있습니까? 또는 이러한 상황을 관리하기위한 제안은 무엇입니까?

+1

이 잘되지 보인다. 이 예외는 형식에 의존하지 않고'paymentAuth'가'null' 일 때 아마 던져 질 것입니다. –

+0

표시된 오류는 구문 분석 오류가 아니므로 자세한 내용을 제공해야합니다. –

+0

[NullReferenceException은 무엇이며 어떻게 수정합니까?] (http://stackoverflow.com/questions/4660142/what-is-a-nullreferenceexception-and-how-do-i-fix-it)) –

답변

1

당신은 지수 또는 당신이 걸리는 Decimal.Parse 메서드의 오버로드를 사용할 수있는 소수에 지수 형식이 될 수있는 문자열을 구문 분석하려면하지

경우 식별 할 필요가 없습니다 이렇게하려면 System.Globalization.NumberStyles 매개 변수.

var result = Decimal.Parse(
       paymentAuth.IyziCommissionFee, 
       System.Globalization.NumberStyles.Float 
      ); 

이 들어오는 문자열이 당신에 대해 얘기 지수 형식을 사용하여 나타낼 수 플로트, 지정합니다.

이 과부하 및 여기에 NumberStyles 유형에 대한 MSDN의 문서를 읽을 수 있습니다