2013-06-06 17 views

Odpowiedz

8

Co o:

[int]"5.7303333333e+02" 
[decimal]"5.7303333333e+02" 
+1

+1 to działa. Ale zastanawiam się, jaki mechanizm rzutowania jest używany w tle, jeśli nie jest to "[dziesiętny] :: TryParse (" 5,7303333333e + 02 ", [ref] $ dec)'. Problem polega na nieobsługiwanym zapisie naukowym, ponieważ '[dziesiętny] :: TryParse (" 5,7303333333 ", [ref] $ dec)' działa ... Zobacz tutaj: http://msdn.microsoft.com/en-us /library/9zbda557.aspx –

+0

Jestem zaskoczony, że działał, ale '[dziesiętny] :: TryParse' nie. Znacznie czystszy wygląd niż użycie TryParse. –

+3

@davor: Używając 'Trace-Command TypeConversion {[dziesiętny] '5.7303333333e + 02'} -PSHost', widać, że PowerShell przechwytuje wyjątek formatu i ponownie próbuje konwersję przez parsowanie za pomocą '[double]', a następnie konwersja do "[dziesiętnej]". –

Powiązane problemy