c convert string int using parse
Tutoriel sur la conversion d'une chaîne en int en C #. Vous apprendrez plusieurs méthodes de conversion telles que Parse, TryParse & Convert en fonction des exigences:
La plupart d'entre nous ont été dans cette situation de temps en temps lorsque nous avons besoin de convertir une chaîne en un type de données entier.
Par exemple, disons que je reçois une chaîne «99» d'une source de données (de la base de données, de l'entrée utilisateur, etc.) mais nous en avons besoin sous forme d'entier pour effectuer certains calculs, ici, nous devrons d'abord la convertir en un entier avant de commencer certaines opérations arithmétiques.
Il existe plusieurs façons de procéder, et examinons quelques-unes des méthodes largement utilisées.
=> Découvrez la série complète de formations C # ici
Ce que vous apprendrez:
- Int.Parse, méthode
- System.Convert, méthode
- int.TryParse, méthode
- Conversion d'une chaîne non numérique en nombre entier
- Conclusion
- lecture recommandée
Int.Parse, méthode
La méthode Int.Parse fonctionne comme des merveilles si vous êtes sûr que votre conversion ne générera jamais d'erreur. C'est l'un des moyens les plus simples et les plus simples de convertir une chaîne en entier. Cela peut générer une erreur si la conversion échoue.
Cette méthode est principalement utilisée lorsque vous avez un entier sous forme de chaîne. Par exemple, vous recevez une chaîne numérique d'une entrée utilisateur telle que «99». Essayons un programme simple pour convertir cette chaîne en un entier.
Programme
Programme de classe publique
{ public static void Main() { String str = '99'; int number = int.Parse(str); Console.WriteLine(number); } }
Production
La sortie du programme ci-dessus:
99
Explication
Le programme renverra la valeur numérique de la chaîne.
La partie délicate de l'utilisation de la méthode int.Parse est le problème de générer une erreur si la chaîne n'est pas dans un format correct, c'est-à-dire si une chaîne contient des caractères autres que des chiffres.
Si un caractère autre que numérique est présent, cette méthode lèvera l'erreur suivante:
“(System.FormatException: Input string was not in a correct format.)”
System.Convert, méthode
Une autre façon de convertir une chaîne en entier consiste à utiliser la méthode Convert. Cette méthode n'est pas aussi simple que la méthode précédente car nous devons être prêts à gérer toute exception pouvant survenir en raison de l'interaction du programme avec des données erronées.
Les exceptions peuvent également consommer beaucoup de mémoire, il est donc déconseillé de rencontrer une exception souhaitée ou indésirable pendant le flux d'exécution. Par exemple, si une exception se produit dans une boucle, beaucoup de mémoire sera consommée pour les lancer et par conséquent, cela ralentira votre programme.
L'utilisation de la méthode Convert est très utile si vous souhaitez connaître la raison de l'échec de l'analyse. Il peut intercepter l'exception et afficher les détails de l'échec.
Programme
public class Program { public static String intString = '123'; public static void Main(string() args) { int i = 0; try { i = System.Convert.ToInt32(intString); } catch (Exception e) { } Console.WriteLine('The converted int is : '+i); } }
Production
'Le entier converti est: 123'
Explication
Dans le programme ci-dessus, nous avons utilisé la méthode convert pour convertir une chaîne en un entier. Ici, si la variable String est numérique, alors elle sera convertie en entier mais en cas de chaîne erronée et elle lèvera une exception qui sera gérée par le bloc catch.
int.TryParse, méthode
L'un des moyens les plus courants d'analyser une représentation sous forme de chaîne en un entier 32 bits consiste à utiliser la méthode TryParse. Cette méthode ne prend en compte aucun espace vide avant ou après la chaîne, mais tous les autres caractères de la chaîne doivent être d'un type numérique approprié pour faciliter une conversion.
Par exemple, tout espace blanc, alphabet ou caractère spécial dans la variable peut provoquer une erreur.
La méthode TryParse accepte deux paramètres, le premier est la chaîne que l'utilisateur souhaite convertir et le second paramètre est le mot-clé «out» suivi de la variable dans laquelle vous souhaitez stocker la valeur. Il renverra une valeur basée sur le succès ou l'échec de la conversion.
TryParse(String, out var)
Jetons un œil à un programme simple pour convertir une chaîne numérique en entier.
Programme
class Program { static void Main(string() args) { try { string value = '999'; int numeric; bool isTrue = int.TryParse(value, out numeric); if (isTrue) { Console.WriteLine('The Integer value is ' + numeric); } } catch (FormatException e) { Console.WriteLine(e.Message); } } }
Production
La valeur entière est 999
Explication
Dans le programme ci-dessus, nous avons utilisé «TryParse» pour convertir la chaîne numérique en un entier. Tout d'abord, nous avons défini une variable chaîne que nous devons convertir. Ensuite, nous avons initialisé une autre variable «numérique» de type entier. Ensuite, nous avons utilisé une variable booléenne pour stocker la valeur de retour de l'analyse d'essai.
Si elle renvoie true, cela signifie que la chaîne a été convertie avec succès en un entier. Si elle renvoie false, il y a un problème avec la chaîne d'entrée. Nous avons entouré l'extrait de programme entier dans le bloc try-catch pour gérer toute exception qui pourrait se produire.
Conversion d'une chaîne non numérique en nombre entier
Dans tous les programmes ci-dessus, nous avons essayé de convertir la valeur de la chaîne numérique en entier, mais dans le scénario du monde réel, la plupart du temps, nous devons gérer des chaînes contenant des caractères spéciaux, des alphabets ainsi que des chiffres. Si nous ne voulons obtenir que la valeur numérique, cela peut être un peu difficile.
Par exemple, nous avons une chaîne de prix d'une valeur de 100 $ et nous devons obtenir le prix en entier. Dans ce cas, si nous essayons d'utiliser l'une des approches décrites ci-dessus, nous obtiendrons une exception.
Ces types de scénarios peuvent être gérés facilement en utilisant une boucle for et une expression régulière après avoir fractionné une chaîne en un tableau de caractères.
Jetons un œil au programme:
class Program { static void Main(string() args) { string price = '0'; string priceNumeric = ''; for(inti =0; i Production
La valeur numérique du prix est: 100
Explication:
Dans le morceau de code ci-dessus, nous avons une variable de prix du type de données chaîne. Ensuite, nous définissons et initialisons une autre variable de chaîne priceNumeric. L'idée est de l'utiliser pour contenir la partie numérique de la variable de prix.
Ensuite, nous avons utilisé une boucle for pour vérifier chaque caractère de la chaîne pour les chiffres. Pour ce faire, nous avons d'abord récupéré les caractères de la variable ch en utilisant index. Ensuite, nous avons utilisé l'expression regex pour vérifier si le caractère que nous avons choisi dans la chaîne correspond à un chiffre numérique ou non. (L'expression « d» de Regex indique une correspondance avec un seul chiffre numérique.).
meilleur éditeur de texte pour python mac
Ensuite, nous concaténons et stockons la chaîne numérique dans la variable priceNumeric. Une fois la boucle terminée, toutes vos chaînes numériques seront ajoutées à cette variable et tous les autres caractères, y compris les caractères spéciaux, les alphabets, etc. seront supprimés.
Comme nous le savons, cette chaîne ne contient désormais que les caractères numériques, et nous pouvons directement utiliser le convert pour transformer cette chaîne en un entier.
Conclusion
Dans ce tutoriel, nous avons appris comment convertir une chaîne en entier. Nous avons également appris à utiliser les différentes méthodes qui peuvent être utilisées pour la conversion en fonction de l'exigence.
Suggestion de lecture = >> Comment convertir une chaîne en entier en Java Et Comment convertir un entier en chaîne en Java
Ensuite, nous avons discuté d'un programme pour convertir des chaînes avec des caractères spéciaux ou des alphabets en un entier en supprimant les parties non entières. Cet exemple de programme peut être modifié selon les besoins de l'utilisateur et peut être utilisé pour récupérer des données numériques à partir de n'importe quelle chaîne.
=> Lisez le guide C # pour les débutants ici
lecture recommandée
- Tutoriel C # String - Méthodes de chaîne avec des exemples de code
- Tutoriel Java String with String Buffer et String Builder
- Threads Java avec méthodes et cycle de vie
- Fonctions de chaîne Python
- Tutoriel Python String Split
- Apprenez à utiliser la classe C # StringBuilder et ses méthodes avec des exemples
- Scriptage avancé du shell Unix: tableaux, opérateurs de test de fichiers et de chaînes, variables spéciales
- Générateur de nombres aléatoires C # et de chaînes aléatoires C # avec exemples de code