Lire des données au clavier en C#
Dans cette leçon, vous allez lire la saisie de l'utilisateur avec Console.ReadLine et la convertir en nombre en toute sécurité avec int.TryParse.
Introduction
La méthode Console.ReadLine met le programme en pause jusqu'à ce que l'utilisateur tape une ligne et appuie sur Entrée, puis renvoie cette ligne sous forme de chaîne. Comme la donnée reçue est toujours une chaîne, il faut la convertir en nombre avant de calculer, et gérer le cas où l'utilisateur saisit quelque chose d'incorrect.
Console.ReadLine peut renvoyer null quand il n'y a plus de données en entrée, c'est pourquoi l'opérateur ?? fournit une valeur par défaut comme "friend". La méthode int.TryParse tente de convertir la chaîne en nombre et renvoie false au lieu de provoquer une erreur si la chaîne est invalide, le résultat sortant par la variable out int age. Dans le compilateur en ligne, tapez votre réponse quand le message apparaît.
Exemple C# exécutable
using System;
class Program
{
static void Main()
{
// Console.ReadLine returns the typed line, or null when input ends.
Console.Write("What is your name? ");
string name = Console.ReadLine() ?? "friend";
// int.TryParse converts text safely instead of throwing on bad input.
Console.Write("How old are you? ");
string text = Console.ReadLine() ?? "";
if (int.TryParse(text, out int age))
{
Console.WriteLine($"Hello, {name}!");
Console.WriteLine($"In 10 years you will be {age + 10}.");
}
else
{
Console.WriteLine($"\"{text}\" is not a whole number.");
}
}
}
What is your name? Ada
How old are you? 29
Hello, Ada!
In 10 years you will be 39.S'entraîner avec le débogueur
S'entraîner avec un défi
Utilisez le contenu de cette leçon pour résoudre un vrai problème. Chaque défi s'exécute dans le navigateur, avec des tests instantanés et une revue par l'IA.
- Average of Three Average three whole numbers. Facile
- Celsius vers Fahrenheit Convertir une température de degrés Celsius en degrés Fahrenheit. Facile