2 votes

vérifier si la valeur est numérique et supérieure à 0

J'ai la valeur 0.075445054945055 pour une variable compte corrigé et j'ai la fonction suivante. Ma fonction actuelle ne fonctionne que pour les nombres entiers et pas pour des valeurs comme 0,075, etc.

Le champ correctedCount provient d'un fichier lorsque celui-ci est analysé.

  var correctedCount
  int num;
  bool isNumeric = int.TryParse(correctedCount, out num);

  if (isNumeric)
   {

    }

8voto

I4V Points 23648

Vous pouvez utiliser decimal.TryParse ou double.TryParse

6voto

Vous pourriez le traiter comme un double comme ceci :

double num;
if (double.TryParse(correctedCount, out num))
{
    // it's at least a number, now verify it's > 0
    return num > 0;
}
else
{
    return false;
}

Edit : cela fonctionne parce que les nombres sans partie décimale (par exemple, "4") sont toujours des doubles valides, de même que "0.075".

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X