Entrée et sortie de base C#
Entrée et sortie de base C#
Dans ce didacticiel, nous allons apprendre à recueillir les entrées de l'utilisateur et à afficher la sortie en C# à l'aide de différentes méthodes
Sortie C#
Afin de sortir quelque chose en C#, nous pouvons utiliser
System.Console.WriteLine() OR System.Console.Write()
Ici, System
est un espace de noms, Console
est une classe dans l'espace de noms System
et WriteLine
et Write
sont des méthodes de classe Console
.
Regardons un exemple simple qui imprime une chaîne sur l'écran de sortie.
Exemple 1 :Impression d'une chaîne à l'aide de WriteLine()
using System;
namespace Sample
{
class Test
{
public static void Main(string[] args)
{
Console.WriteLine("C# is cool");
}
}
}
Lorsque nous exécutons le programme, la sortie sera
C# is cool
Différence entre les méthodes WriteLine() et Write()
La principale différence entre WriteLine()
et Write()
c'est que le Write()
La méthode imprime uniquement la chaîne qui lui est fournie, tandis que la méthode WriteLine()
imprime la chaîne et passe également au début de la ligne suivante.
Examinons l'exemple ci-dessous pour comprendre la différence entre ces méthodes.
Exemple 2 :Comment utiliser les méthodes WriteLine() et Write() ?
using System;
namespace Sample
{
class Test
{
public static void Main(string[] args)
{
Console.WriteLine("Prints on ");
Console.WriteLine("New line");
Console.Write("Prints on ");
Console.Write("Same line");
}
}
}
Lorsque nous exécutons le programme, la sortie sera
Prints on New line Prints on Same line
Imprimer des variables et des littéraux à l'aide de WriteLine() et Write()
Le WriteLine()
et Write()
La méthode peut être utilisée pour imprimer des variables et des littéraux. Voici un exemple.
Exemple 3 :Impression de variables et de littéraux
using System;
namespace Sample
{
class Test
{
public static void Main(string[] args)
{
int value = 10;
// Variable
Console.WriteLine(value);
// Literal
Console.WriteLine(50.05);
}
}
}
Lorsque nous exécutons le programme, la sortie sera
10 50.05
Combiner (concaténer) deux chaînes en utilisant l'opérateur + et les imprimer
Les chaînes peuvent être combinées/concaténées en utilisant le +
opérateur pendant l'impression.
Exemple 4 :Impression d'une chaîne concaténée à l'aide de l'opérateur +
using System;
namespace Sample
{
class Test
{
public static void Main(string[] args)
{
int val = 55;
Console.WriteLine("Hello " + "World");
Console.WriteLine("Value = " + val);
}
}
}
Lorsque nous exécutons le programme, la sortie sera
Hello World Value = 55
Imprimer une chaîne concaténée à l'aide d'une chaîne formatée [Meilleure alternative]
Une meilleure alternative pour imprimer une chaîne concaténée consiste à utiliser une chaîne formatée. La chaîne formatée permet au programmeur d'utiliser des espaces réservés pour les variables. Par exemple,
La ligne suivante,
Console.WriteLine("Value = " + val);
peut être remplacé par,
Console.WriteLine("Value = {0}", val);
{0}
est l'espace réservé pour la variable val qui sera remplacé par la valeur de val . Puisqu'une seule variable est utilisée, il n'y a qu'un seul espace réservé.
Plusieurs variables peuvent être utilisées dans la chaîne formatée. Nous verrons cela dans l'exemple ci-dessous.
Exemple 5 :impression d'une chaîne concaténée à l'aide du formatage de chaîne
using System;
namespace Sample
{
class Test
{
public static void Main(string[] args)
{
int firstNumber = 5, secondNumber = 10, result;
result = firstNumber + secondNumber;
Console.WriteLine("{0} + {1} = {2}", firstNumber, secondNumber, result);
}
}
}
Lorsque nous exécutons le programme, la sortie sera
5 + 10 = 15
Ici, {0}
est remplacé par firstNumber , {1}
est remplacé par secondNumber et {2}
est remplacé par résultat . Cette approche de la sortie d'impression est plus lisible et moins sujette aux erreurs que l'utilisation de +
opérateur.
Pour en savoir plus sur le formatage des chaînes, consultez Formatage des chaînes C# .
Entrée C#
En C#, la méthode la plus simple pour obtenir l'entrée de l'utilisateur consiste à utiliser le ReadLine()
méthode du Console
classer. Cependant, Read()
et ReadKey()
sont également disponibles pour obtenir l'entrée de l'utilisateur. Ils sont également inclus dans Console
classe.
Exemple 6 :Obtenir une entrée de chaîne de l'utilisateur
using System;
namespace Sample
{
class Test
{
public static void Main(string[] args)
{
string testString;
Console.Write("Enter a string - ");
testString = Console.ReadLine();
Console.WriteLine("You entered '{0}'", testString);
}
}
}
Lorsque nous exécutons le programme, la sortie sera :
Enter a string - Hello World You entered 'Hello World'
Différence entre les méthodes ReadLine(), Read() et ReadKey() :
La différence entre ReadLine()
, Read()
et ReadKey()
méthode est :
ReadLine()
:LeReadLine()
lit la ligne d'entrée suivante à partir du flux d'entrée standard. Il renvoie la même chaîne.Read()
:LeRead()
lit le caractère suivant du flux d'entrée standard. Il renvoie la valeur ascii du caractère.ReadKey()
:LeReadKey()
méthode obtient la prochaine touche enfoncée par l'utilisateur. Cette méthode est généralement utilisée pour maintenir l'écran jusqu'à ce que l'utilisateur appuie sur une touche.
Si vous voulez en savoir plus sur ces méthodes, voici une discussion intéressante sur StackOverflow sur :Différence entre Console.Read() et Console.ReadLine() ?.
Exemple 7 :Différence entre les méthodes Read() et ReadKey()
using System;
namespace Sample
{
class Test
{
public static void Main(string[] args)
{
int userInput;
Console.WriteLine("Press any key to continue...");
Console.ReadKey();
Console.WriteLine();
Console.Write("Input using Read() - ");
userInput = Console.Read();
Console.WriteLine("Ascii Value = {0}",userInput);
}
}
}
Lorsque nous exécutons le programme, la sortie sera
Press any key to continue... x Input using Read() - Learning C# Ascii Value = 76
À partir de cet exemple, il doit être clair comment ReadKey()
et Read()
méthode fonctionne. Lors de l'utilisation de ReadKey()
, dès que la touche est appuyée, elle s'affiche à l'écran.
Lorsque Read()
est utilisé, il prend une ligne entière mais ne renvoie que la valeur ASCII du premier caractère. Par conséquent, 76
(valeur ASCII de L
) est imprimé.
Lecture de valeurs numériques (types entiers et virgule flottante)
La lecture d'un caractère ou d'une chaîne est très simple en C#. Tout ce que vous avez à faire est d'appeler les méthodes correspondantes selon vos besoins.
Cependant, la lecture de valeurs numériques peut être légèrement délicate en C#. Nous utiliserons toujours le même ReadLine()
méthode que nous avons utilisée pour obtenir des valeurs de chaîne. Mais depuis le ReadLine()
reçoit l'entrée sous forme de chaîne, elle doit être convertie en entier ou en virgule flottante.
Une approche simple pour convertir notre entrée consiste à utiliser les méthodes de Convert
classe.
Exemple 8 :Lecture des valeurs numériques de l'utilisateur à l'aide de la classe Convert
using System;
namespace UserInput
{
class MyClass
{
public static void Main(string[] args)
{
string userInput;
int intVal;
double doubleVal;
Console.Write("Enter integer value: ");
userInput = Console.ReadLine();
/* Converts to integer type */
intVal = Convert.ToInt32(userInput);
Console.WriteLine("You entered {0}",intVal);
Console.Write("Enter double value: ");
userInput = Console.ReadLine();
/* Converts to double type */
doubleVal = Convert.ToDouble(userInput);
Console.WriteLine("You entered {0}",doubleVal);
}
}
}
Lorsque nous exécutons le programme, la sortie sera
Enter integer value: 101 You entered 101 Enter double value: 59.412 You entered 59.412
Le ToInt32()
et ToDouble()
La méthode de la classe Convert convertit l'entrée de chaîne en entier et en type double respectivement. De même, nous pouvons convertir l'entrée en d'autres types. Voici une liste complète des méthodes disponibles pour la classe Convert.
Il existe d'autres moyens d'obtenir des entrées numériques de l'utilisateur. Pour en savoir plus, consultez Lecture d'un entier à partir d'une entrée utilisateur.
Langue C
- Vers Cloud Infinity et au-delà
- Sécurité et avantages importants de l'utilisation de Cloud Linux
- Entrée/sortie de base C++
- C Entrée Sortie (E/S)
- Entrée, sortie et importation Python
- Entrée et sortie de base Java
- Boîtes aux lettres :présentation et services de base
- Sémaphores :introduction et services de base
- Files d'attente :introduction et services de base