J'ai besoin d'analyser la liste des nums avec un point dans les mille en C #. P>
3,7 à 3700 Le 6.45 à 6450 et si j'ai besoin de 5432,2 passer au 5432200 même p>
réservoirs p>
3 Réponses :
juste analyser comme décimal et multiplier par 1000. P>
Et puis l'arrondir (en utilisant une règle d'arrondi) et le jeter à un entier.
Si vous analysez 6,45 comme décimal, cela vous donnerait 645
@ Joãopauloamorim il signifie utiliser décimal.parse () ou décimal.tryparse ()
Eh bien, si vous essayez de décimal.Parser une chaîne avec "6.45", il vous donne 645 ..
"Just Analys" n'est probablement pas assez bon comme une réponse en fonction de l'emplacement de l'OP. Différentes cultures peuvent avoir différents caractères de point décimal, conduisant à différents résultats d'analyse en fonction de la culture actuelle lors de l'analyse de la chaîne ...
@ Joãopauloamorim, si j'essaie le résultat coûte 6,45. Le résultat de l'analyse dépend de la culture qui est en vigueur (la culture actuelle). Ainsi, vous ne pouvez pas vraiment dire ce que le résultat sera sans connaître la culture actuelle au moment de l'analyse (ou sans spécifier explicitement de spécifier le format de culture ou de numéro utilisé pour l'analyse). Par conséquent, pourquoi j'ai dit "pourrait" ... ;-p
@elgonzo True fait, je viens d'essayer de analyser la culture en US et cela m'a donné 6,45, c'est une bonne chose à savoir, ne savait vraiment pas cela, merci pour la connaissance
Analysez la valeur sous forme de en utilisant décimal code> (spécifiant la culture correcte) et multipliez-la avec 1000. cultureinfo.invarianTculture code> interprète toujours le point de séparateur décimal et de virgules comme mille séparateurs. Si vous souhaitez utiliser la culture de l'utilisateur actuel, utilisez cultureinfo.currentculture code> à la place. P>
multiple par résultat:
1000 code> et convertir en int code> 3700 code>
6450 code> p> p>