Comment utiliser efficacement la ligne d'impression C#
Publié avril 3, 2024
Partager:
L'impression de lignes en C# est un aspect fondamental des applications de console, qui consiste à afficher du texte ou des valeurs spécifiées sur l'écran de la console. Que vous travailliez avec le flux de sortie standard ou que vous mettiez en forme des chaînes de caractères, il est important de savoir commentimprimer les lignes l'efficacité est cruciale dans les applications de la console C#.
Dans cet article, nous allons explorer diverses méthodes et techniques liées à l'impression de lignes dans C#.
Principes de base de la ligne d'impression
En C#, l'impression d'une ligne passe souvent par l'utilisation de la méthode Console.WriteLine. Commençons par un exemple simple :
using System;
class Program {
public static void Main() {
Console.WriteLine("Hello, C# Print Line!");
}
}
using System;
class Program {
public static void Main() {
Console.WriteLine("Hello, C# Print Line!");
}
}
Imports System
Friend Class Program
Public Shared Sub Main()
Console.WriteLine("Hello, C# Print Line!")
End Sub
End Class
$vbLabelText $csharpLabel
Dans le code ci-dessus, l'instruction Console.WriteLine produit la valeur de la chaîne spécifiée("Bonjour, C# Ligne d'impression!") suivie d'une nouvelle ligne. Pour ce faire, la méthode WriteLine ajoute une fin de ligne à la fin de la sortie.
Terminateurs de ligne
Une fin de ligne est un caractère spécial ou une séquence qui indique la fin d'une ligne. Les deux caractères de fin de ligne les plus courants sont le retour chariot('\r') et le saut de ligne('\n'). En C#, la méthode Console.WriteLine se charge d'utiliser le terminateur de ligne courant approprié en fonction du système d'exploitation.
public static void Main() {
Console.WriteLine("This is on the first line.");
Console.WriteLine("This is on the second line.");
}
public static void Main() {
Console.WriteLine("This is on the first line.");
Console.WriteLine("This is on the second line.");
}
Public Shared Sub Main()
Console.WriteLine("This is on the first line.")
Console.WriteLine("This is on the second line.")
End Sub
$vbLabelText $csharpLabel
Dans l'exemple ci-dessus, après l'exécution du programme, chaque Console.WriteLine produit une nouvelle ligne dans la fenêtre de la console C#, ce qui donne les deux lignes spécifiées.
Spécification des terminaisons de ligne
Si vous devez contrôler explicitement la fin de ligne, vous pouvez utiliser la méthode Console.Write et ajouter manuellement la fin de ligne souhaitée :
public static void Main() {
Console.Write("This is on the first line.");
Console.Write('\r'); // Carriage return
Console.Write("This is on the same line but very far left position.");
}
public static void Main() {
Console.Write("This is on the first line.");
Console.Write('\r'); // Carriage return
Console.Write("This is on the same line but very far left position.");
}
Imports Microsoft.VisualBasic
Public Shared Sub Main()
Console.Write("This is on the first line.")
Console.Write(ControlChars.Cr) ' Carriage return
Console.Write("This is on the same line but very far left position.")
End Sub
$vbLabelText $csharpLabel
Dans cet exemple, le retour chariot('\r') est utilisé pour positionner le curseur au début de la ligne, ce qui a pour effet de faire apparaître la deuxième partie du texte à l'extrême gauche, c'est-à-dire qu'elle écrase la sortie précédente.
Impression de plusieurs lignes
Pour imprimer plusieurs lignes sans répéter l'instruction Console.WriteLine, vous pouvez utiliser une liste de paramètres de longueur variable :
public static void Main() {
PrintLines("Line 1", "Line 2", "Line 3");
}
static void PrintLines(params string [] lines) {
foreach (var line in lines) {
Console.WriteLine(line);
}
}
public static void Main() {
PrintLines("Line 1", "Line 2", "Line 3");
}
static void PrintLines(params string [] lines) {
foreach (var line in lines) {
Console.WriteLine(line);
}
}
Public Shared Sub Main()
PrintLines("Line 1", "Line 2", "Line 3")
End Sub
Shared Sub PrintLines(ParamArray ByVal lines() As String)
For Each line In lines
Console.WriteLine(line)
Next line
End Sub
$vbLabelText $csharpLabel
La méthode PrintLines que nous avons créée prend un tableau spécifié de paramètres de chaîne, vous permettant de passer n'importe quel nombre de nouvelles lignes pour imprimer une valeur de chaîne spécifiée :
Formatage de la sortie
Le formatage de la sortie est crucial, en particulier lorsqu'il s'agit de traiter différents types de données. La méthode Console.WriteLine propose plusieurs surcharges qui acceptent un objet spécifié et formatent les informations :
public static void Main() {
int answer = 42;
string name = "John Doe";
Console.WriteLine("The answer is {0}.", answer);
Console.WriteLine("Hello, {0}!", name);
}
public static void Main() {
int answer = 42;
string name = "John Doe";
Console.WriteLine("The answer is {0}.", answer);
Console.WriteLine("Hello, {0}!", name);
}
Public Shared Sub Main()
Dim answer As Integer = 42
Dim name As String = "John Doe"
Console.WriteLine("The answer is {0}.", answer)
Console.WriteLine("Hello, {0}!", name)
End Sub
$vbLabelText $csharpLabel
Dans cet exemple, {0} est un espace réservé pour les objets spécifiés(dans ce cas, réponse et nom)vous permet d'inclure des données variables dans la sortie et d'imprimer les informations de format spécifiées.
Sauts de ligne et caractères Unicode
Pour les sauts de ligne spéciaux ou les caractères Unicode, vous pouvez utiliser des séquences d'échappement. Vous pouvez également imprimer n'importe quel littéral ASCII ou code HTML valide à l'aide de Console.WriteLine. Par exemple, pour inclure un saut de ligne dans la même chaîne :
public static void Main() {
Console.WriteLine("This is line 1.\nThis is line 2.");
Console.WriteLine("Line 1\u000Aline 2");
}
public static void Main() {
Console.WriteLine("This is line 1.\nThis is line 2.");
Console.WriteLine("Line 1\u000Aline 2");
}
Imports Microsoft.VisualBasic
Public Shared Sub Main()
Console.WriteLine("This is line 1." & vbLf & "This is line 2.")
Console.WriteLine("Line 1" & vbLf & "line 2")
End Sub
$vbLabelText $csharpLabel
Ici, \n et \u000A, le caractère Unicode spécifié, représentent tous deux un caractère de saut de ligne, ce qui fait passer le texte à la ligne suivante dans chaque cas.
Valeurs booléennes aléatoires
Le code ci-dessous utilise l'interpolation de chaînes de caractères dans la méthode Console.WriteLine. L'interpolation de chaînes est une fonctionnalité introduite dans C# 6.0 qui simplifie le processus d'intégration d'expressions ou de variables dans des chaînes littérales et l'affichage correct de la valeur booléenne spécifiée dans l'application Console.
Random rnd = new Random();
for (int i = 1; i <= 5; i++)
{
bool isTrue = rnd.Next(0, 2) == 1;
Console.WriteLine($"True or False: {isTrue}");
}
Random rnd = new Random();
for (int i = 1; i <= 5; i++)
{
bool isTrue = rnd.Next(0, 2) == 1;
Console.WriteLine($"True or False: {isTrue}");
}
Dim rnd As New Random()
For i As Integer = 1 To 5
Dim isTrue As Boolean = rnd.Next(0, 2) = 1
Console.WriteLine($"True or False: {isTrue}")
Next i
$vbLabelText $csharpLabel
Les données spécifiées renvoyées par l'expression sont imprimées sur la console comme indiqué ci-dessous :
Impression de différents formats numériques
L'impression de différents formats numériques est une exigence courante en programmation, en particulier lorsqu'il s'agit de nombres à virgule flottante en double précision et à virgule flottante en simple précision. Là encore, les instructions Console.WriteLine peuvent être utilisées pour les imprimer avec précision et facilité.
Dim doubleValue As Double = 0.123456789
Console.WriteLine($"Double Precision: {doubleValue:F7}")
$vbLabelText $csharpLabel
Dans cet exemple, F7 indique que la valeur double doit être formatée avec 7 chiffres après la virgule. Vous pouvez ajuster le nombre après "F" pour contrôler la précision.
Dim existingString As String = "Hello, C#!"
Console.WriteLine($"Existing String: {existingString}")
$vbLabelText $csharpLabel
L'impression d'une chaîne de caractères existante est simple. Il suffit d'utiliser Console.WriteLine et d'inclure la chaîne que vous souhaitez afficher.
Dim singleValue As Single = 0.123456789F
Console.WriteLine($"Single Precision: {singleValue:F7}")
$vbLabelText $csharpLabel
Comme pour la double précision, le spécificateur de format F7 est utilisé ici pour la virgule flottante simple précision. Vous pouvez ajuster le nombre après "F" en fonction de vos besoins de précision.
Débloquer de puissantes capacités d'impression avec IronPrint dans C# ;
L'impression de documents est un aspect fondamental de nombreuses applications, et lorsqu'il s'agit d'exploiter tout le potentiel de l'impression en C#, IronPrint s'impose comme une bibliothèque polyvalente et riche en fonctionnalités.
Introduction à IronPrint
IronPrintdéveloppée par Iron Software, est une bibliothèque d'impression avancée conçue pour l'écosystème .NET, y compris C#. Que vous travailliez sur une application de bureau, mobile ou web, IronPrint s'intègre de manière transparente à vos projets C#, fournissant un ensemble complet d'outils pour gérer les divers besoins d'impression.
Principales caractéristiques d'IronPrint
1. Compatibilité multiplateforme:
IronPrint prend en charge différents systèmes d'exploitation, notamment Windows, macOS, Android et iOS. Cette compatibilité multiplateforme garantit que vos solutions d'impression peuvent atteindre les utilisateurs dans différents environnements.
2. prise en charge de la version .NET:
Compatible avec .NET Framework 4.6.2 et plus, .NET Core 3.1+ et les dernières versions de .NET, IronPrint couvre un large éventail d'environnements .NET.
3. Soutien au type de projet:
IronPrint répond à différents types de projets, notamment Mobile(Xamarin et MAUI), Desktop(WPF ET MAUI)et la console(Application et bibliothèque). Cette flexibilité lui permet de s'adapter à une grande variété d'architectures d'applications.
4. Installation facile:
La mise en route d'IronPrint est un jeu d'enfant. Vous pouvez rapidement installer la bibliothèque en utilisant la console NuGet Package Manager et en exécutant la commande Install-Package IronPrint.
Utilisation de base d'IronPrint
Voici un exemple simple démontrant à quel point il est facile d'utiliser IronPrint dans une application console C# pourprint documents :
using IronPrint;
class Program
{
static void Main()
{
Console.WriteLine("Printing Started...");
// Silent printing of a document
Printer.Print("document.pdf");
// Or display a print dialog
Printer.ShowPrintDialog("document.pdf");
Console.WriteLine("Printing Completed...");
}
}
using IronPrint;
class Program
{
static void Main()
{
Console.WriteLine("Printing Started...");
// Silent printing of a document
Printer.Print("document.pdf");
// Or display a print dialog
Printer.ShowPrintDialog("document.pdf");
Console.WriteLine("Printing Completed...");
}
}
Imports IronPrint
Friend Class Program
Shared Sub Main()
Console.WriteLine("Printing Started...")
' Silent printing of a document
Printer.Print("document.pdf")
' Or display a print dialog
Printer.ShowPrintDialog("document.pdf")
Console.WriteLine("Printing Completed...")
End Sub
End Class
$vbLabelText $csharpLabel
La sortie ici montre l'impression d'un document à l'aide des méthodes Print et ShowPrintDialog. Si l'imprimante physique n'est pas installée, l'imprimante par défaut est utilisée pour l'impression.
Capacités d'impression avancées
IronPrint va au-delà des tâches d'impression de base et offre des fonctionnalités avancées telles que :
Impression silencieuse : Imprimez des documents sans afficher de dialogue à l'aide de Printer.PrintAsync.
Paramètres d'impression personnalisés : Permet d'affiner les paramètres d'impression à l'aide de la fonctionPrintSettings classe.
Impression asynchrone : Exécuter les opérations d'impression de manière asynchrone pour éviter de bloquer le fil d'exécution principal.
Sélectionnez Imprimante : L'écranGetPrinterNames vous permet de choisir parmi les imprimantes disponibles et d'exercer un contrôle plus précis sur le processus d'impression.
Ajustements spécifiques à la plate-forme
IronPrint vous permet d'adapter vos solutions d'impression à différentes plateformes. Par exemple, lorsque vous travaillez avec des projets .NET Core ciblant des plateformes spécifiques comme Windows, Android, iOS ou macOS, vous pouvez ajuster la propriété TargetFrameworks dans votre fichier de projet en conséquence.
L'impression de lignes en C# est une compétence fondamentale pour le développement d'applications en mode console. Qu'il s'agisse d'afficher du texte, de formater la sortie ou de contrôler les terminaisons de ligne, la compréhension des différentes techniques disponibles vous permettra de créer des programmes de console efficaces et lisibles. Explorez les diverses méthodes fournies par la classe Console, expérimentez les options de formatage et tirez parti de la flexibilité de C# pour produire des sorties de console claires et bien structurées dans vos applications.
IronPrint apparaît comme un allié puissant pour les développeurs C# à la recherche de capacités d'impression robustes et flexibles. Grâce à sa prise en charge multiplateforme, à sa compatibilité avec diverses versions de .NET et à ses fonctions d'impression avancées, IronPrint simplifie la mise en œuvre de solutions d'impression dans diverses applications C#. Que vous développiez pour le bureau, le mobile ou le web, IronPrint fournit les outils dont vous avez besoin pour donner vie à vos besoins d'impression dans le monde du développement C#.
IronPrint offre uneessai gratuit à des fins commerciales. Télécharger la bibliothèque à partir deici et l'essayer.
Jordi maîtrise parfaitement Python, C# et C++. Lorsqu'il ne met pas à profit ses compétences chez Iron Software, il se consacre à la programmation de jeux. Partageant des responsabilités en matière de tests de produits, de développement de produits et de recherche, Jordi apporte une valeur ajoutée considérable à l'amélioration continue des produits. Cette expérience variée le stimule et l'engage, et il dit que c'est l'un des aspects qu'il préfère dans son travail chez Iron Software. Jordi a grandi à Miami, en Floride, et a étudié l'informatique et les statistiques à l'université de Floride.
Des millions d'ingénieurs dans le monde entier lui font confiance
Réservez une démo en direct gratuite
Réservez une démonstration personnelle de 30 minutes.
Pas de contrat, pas de détails de carte, pas d'engagements.
Voici ce à quoi vous pouvez vous attendre :
Une démonstration en direct de notre produit et de ses principales fonctionnalités
Obtenez des recommandations de fonctionnalités spécifiques au projet
Toutes vos questions trouvent réponse pour vous assurer de disposer de toutes les informations dont vous avez besoin. (Aucune obligation de votre part.)
CHOISIR L'HEURE
VOS INFORMATIONS
Réservez votre gratuit Démonstration en direct
Fiable par plus de 2 millions d'ingénieurs dans le monde entier