2008-11-18 13 views

Répondre

5

EDIT: selon la suggestion 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 vous êtes sûr que les signes pourraient être - ou +, String.Replace pourrait aider. Si vous voulez dire que 323- devrait retourner -323, vérifier le signe et le multiplier par -1 aiderait.

2
[System.Globalization.NumberStyles]::AllowTrailingSign 

Je devrais également souligner que lorsque j'ai affaire à des énumérations en général, je peux parfois obtenir en tapant une chaîne. Par exemple. dans ce cas, il suffit de mettre

"AllowTrailingSign" 

note finale, quand questionnant un Enum pour toutes les valeurs possibles, utilisez la ligne:

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

Voilà un meilleur moyen d'obtenir les valeurs enum:

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

Voir ms à moi vous voulez dire: $ type = [System.Globalization.NumberStyles]; [enum] :: GetValues ​​($ type); –

Questions connexes