Maison >développement back-end >C++ >Comment gérer « La chaîne d'entrée n'était pas dans un format correct » lors de l'analyse de chaînes vides en C# ?

Comment gérer « La chaîne d'entrée n'était pas dans un format correct » lors de l'analyse de chaînes vides en C# ?

Susan Sarandon
Susan Sarandonoriginal
2025-01-04 00:26:39359parcourir

How to Handle

Gestion des exceptions dans l'analyse d'entiers : "La chaîne d'entrée n'était pas dans un format correct"

Rencontre de ce message d'erreur lors de l'analyse d'une chaîne vide à l'aide int.Parse() découle de la contrainte inhérente selon laquelle la chaîne d'entrée doit adhérer à un entier valide format.

Comprendre l'erreur :

L'erreur « La chaîne d'entrée n'était pas dans un format correct » se produit car la chaîne en cours d'analyse contient des caractères ou des symboles qui ne sont pas reconnus. dans le cadre d’une représentation entière valide. Une chaîne vide, étant dépourvue de tout caractère, échoue naturellement à cette validation.

Gestion des chaînes vides :

Pour gérer correctement les chaînes vides lors de l'analyse d'entiers, envisagez les approches suivantes :

1. La valeur par défaut est zéro en cas d'entrée vide :

Si le comportement souhaité est de définir par défaut une valeur telle que 0 lorsque la chaîne d'entrée est vide, utilisez le code suivant :

int i = string.IsNullOrEmpty(Textbox1.Text) ? 0 : int.Parse(Textbox1.Text);

Ceci le code vérifie si la chaîne d'entrée (Textbox1.Text) est vide (à l'aide de string.IsNullOrEmpty()) et attribue la valeur par défaut de 0 si elle est vraie. Sinon, il analyse la chaîne en un entier.

2. La valeur par défaut est zéro pour toute entrée non valide :

Si l'intention est de définir par défaut la valeur 0 pour toute entrée non valide, y compris les chaînes vides, utilisez le code suivant :

int i;
if (!int.TryParse(Textbox1.Text, out i)) i = 0;

int. TryParse() tente d'analyser la chaîne d'entrée (Textbox1.Text) en un entier (i). En cas de succès, je conserverai la valeur analysée. Si la chaîne est vide ou contient des caractères non valides, int.TryParse() renvoie false et i se voit attribuer la valeur par défaut de 0.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn