2008-11-18 18 views

Respuesta

5

EDIT: según la sugerencia de Halr9000

$foo = "300-"; 
$bar = 0; 
$numberStyles = [System.Globalization.NumberStyles]; 
$cultureInfo = [System.Globalization.CultureInfo]; 

[int]::TryParse($foo, $numberStyles::AllowTrailingSign, $cultureInfo::CurrentCulture, [ref]$bar); 
0

Si está seguro de que los signos podrían ser - o +, String.Replace podría ayudar.

Si quiere decir que 323- debería devolver -323, buscar el signo y multiplicarlo por -1 ayudaría.

2
[System.Globalization.NumberStyles]::AllowTrailingSign 

Debo señalar también que cuando trato con enumeraciones en general, a veces puedo obtener escribiendo una cadena. P.ej. en este caso, sólo hay que poner

"AllowTrailingSign" 

nota final, cuando interrogando a una enumeración de todos los valores posibles, utilizar la línea:

[System.Globalization.NumberStyles] | gm -static 
1

Aquí es una mejor forma de obtener los valores enum:

$type = [System.Globalization.NumberStyles] 
[enum]::GetValues($type) 
+0

See Me refieres a ms me: $ type = [System.Globalization.NumberStyles]; [enum] :: GetValues ​​($ type); –

Cuestiones relacionadas