Passer au contenu du pied de page
Iron Academy Logo
Application C#
Application C#

Autres catégories

Formatage de la sortie JSON - Spectre Console Series

Tim Corey
7m 01s

Spectre Console est une bibliothèque .NET qui vous permet de créer des applications de console riches et colorées. Au lieu d'une sortie en texte brut, vous pouvez utiliser les panneaux, les tableaux et même le formatage JSON de Spectre pour présenter les données de manière attrayante.

Dans cet article, nous allons examiner en détail le JSON de la console Spectre tel qu'il est présenté dans la vidéo de Tim Corey "Formater la sortie JSON - Spectre Console Series" Nous allons parcourir son code, ses installations de packages NuGet et ses conseils de style. Vous verrez comment donner à vos applications de console des "superpouvoirs JSON" grâce à une mise en évidence claire de la syntaxe et à des mises en page faciles à lire. Tous les repères temporels dans les titres correspondent à la vidéo de Tim afin que vous puissiez suivre.

Pour commencer : Ce qu'est le JSON de la console Spectre

À 0:00, Tim présente Spectre Console, une bibliothèque .NET permettant de créer des applications de console visuellement attrayantes. Il explique que dans cette leçon, il va récupérer des données JSON à partir d'une API et les afficher à l'aide de Spectre Console JSON. Cela signifie que votre chaîne de JSON brut peut être convertie en un objet riche que Spectre peut rendre.

Il précise que le code source et le lien vers le site web du projet figurent dans la description afin que vous puissiez télécharger le projet vous-même.

Récupération de données JSON à l'aide d'une fonction d'aide

À 0:35, Tim montre le code d'aide. Dans son projet, il a une classe Helpers avec une fonction appelée FetchApiDataAsync. Cette fonction envoie une requête à une URL, récupère le JSON et renvoie la réponse sous forme de chaîne.

Il note que vous pouvez simplement utiliser AnsiConsole.WriteLine(jsonResponse) pour écrire le JSON dans la console. Mais comme il le démontre à 1:26, ce résultat brut n'est qu'un ensemble dense de texte, qui n'est pas convivial pour les personnes qui le lisent ou qui travaillent avec.

Installation du paquet JSON de la console Spectre

À 1:46, Tim dit qu'il veut formater le JSON correctement. Mais d'abord, il a besoin du paquet d'extension JSON. Il fait un clic droit sur le projet, choisit "Manage NuGet Packages" et installe Spectre.Console.Json.

Il souligne que vous pouvez également utiliser le CLI et exécuter :

dotnet add package Spectre.Console.Json
dotnet add package Spectre.Console.Json

Il s'agit du package NuGet officiel pour le rendu JSON. Comme Tim l'explique à 2:14, vous pouvez créer une application compilée AOT (ahead-of-time) avec le paquet Spectre et le paquet Spectre.Console.Json, mais pas avec le CLI pour le moment.

Création d'une instance de JsonText

À 2:31, Tim montre la syntaxe permettant de transformer votre chaîne JSON en un objet Spectre pouvant être rendu. Il écrit :

using Spectre.Console.Json;

var json = new JsonText(jsonResponse);
using Spectre.Console.Json;

var json = new JsonText(jsonResponse);

Cela crée une nouvelle instance de JsonText à partir de votre chaîne. Vous avez maintenant un objet que Spectre peut rendre avec style. Vous n'avez pas à analyser vous-même les tableaux, les valeurs nulles ou les objets imbriqués : la bibliothèque le fait pour vous.

Rendu de JSON à l'intérieur d'un panneau

À 3:00, Tim montre comment écrire le JSON dans la console. Il utilise la fonction panel de Spectre pour encadrer les données :

AnsiConsole.Write(
    new Panel(json)
);
AnsiConsole.Write(
    new Panel(json)
);

À 3:39, lorsqu'il exécute le code, le JSON apparaît dans une boîte stylisée. Les touches sont en bleu, les nombres et les booléens en vert, et les valeurs textuelles en rouge. Même les données des tableaux et les objets imbriqués s'affichent correctement. Spectre enveloppe automatiquement les longues lignes, de sorte que vous n'avez pas à construire l'indentation ou l'espacement vous-même.

Spectre Console Formatting Json Output 1 related to Rendu de JSON à l'intérieur d'un panneau

Il note également à 3:59 que les URL à l'intérieur de votre JSON deviennent des liens cliquables dans de nombreux terminaux - un autre avantage pour les personnes qui lisent JSON directement à partir d'une console.

Ajouter des en-têtes, des bordures et des styles

À 4:09, Tim passe au style. Il enchaîne les méthodes sur le panneau pour définir un en-tête, réduire l'espace excédentaire et modifier la couleur de la bordure :

var panel = new Panel(json)
    .Header("API Response")
    .Collapse()
    .BorderColor(Color.White);

AnsiConsole.Write(panel);
var panel = new Panel(json)
    .Header("API Response")
    .Collapse()
    .BorderColor(Color.White);

AnsiConsole.Write(panel);

À 5:02, lorsqu'il exécute cette version, la console affiche une boîte polie intitulée "API Response", exactement comme dans un outil web ou un IDE. Les informations provenant de votre API sont ainsi beaucoup plus faciles à lire.

Spectre Console Formatting Json Output 2 related to Ajouter des en-têtes, des bordures et des styles

Personnaliser les couleurs JSON

À 5:14, Tim montre que vous pouvez changer la couleur des parties JSON individuellement. Il ne modifie pas toutes les propriétés, juste ce qu'il faut pour démontrer la syntaxe :

json.StringColor = Color.Yellow;
json.ColonColor = Color.Orange;
json.StringColor = Color.Yellow;
json.ColonColor = Color.Orange;

À 5:52, lorsqu'il l'exécute, les valeurs du texte sont jaunes et les deux-points sont orange. Vous pouvez utiliser Color.Red, Color.Green ou toute autre couleur Spectre définie. Cela vous permet d'adapter votre style d'entreprise ou de mettre en évidence des valeurs spécifiques dans votre console.

Pourquoi la console Spectre JSON est importante

À 6:04, Tim résume les avantages. Avec Spectre Console JSON, vous pouvez :

  • Installez un seul package NuGet et obtenez des "superpouvoirs" de formatage JSON

  • Prenez une chaîne JSON simple et rendez-la automatiquement sous la forme d'un objet coloré.

  • Travaillez avec des tableaux, des collections imbriquées, des valeurs nulles et de grands ensembles de données sans écrire votre propre code de formatage.

  • Ajoutez facilement des en-têtes, des bordures et des couleurs personnalisées aux panneaux.

  • Faites en sorte que vos applications de console restent professionnelles et faciles à lire.

Il insiste sur le fait qu'il n'est pas nécessaire de construire l'indentation, de gérer l'espacement ou de définir les couleurs manuellement. La bibliothèque se charge de ces opérations pour vous.

Conclusion

À 6:38, Tim conclut en remerciant les téléspectateurs. Il a montré comment récupérer du JSON à partir d'une API, le convertir en un objet JsonText et l'afficher dans un panneau stylisé avec des paramètres de couleur personnalisés.

Avec un seul package NuGet supplémentaire et quelques lignes de code, votre application console peut acquérir des " superpouvoirs JSON ", c'est-à-dire une sortie belle et lisible pour vos données.

Si vous souhaitez aller plus loin, consultez le site web du projet Spectre Console ou le canal de Tim pour obtenir des instructions plus détaillées. Comme Tim le démontre dans sa vidéo, une fois que vous avez installé le paquetage et créé votre instance JsonText, tout le travail est fait. Votre application console devient un outil bien plus utile pour lire, travailler et partager des informations JSON.

Hero Worlddot related to Formatage de la sortie JSON - Spectre Console Series
Hero Affiliate related to Formatage de la sortie JSON - Spectre Console Series

Gagnez plus en partageant ce que vous aimez

Vous créez du contenu pour les développeurs travaillant avec .NET, C#, Java, Python ou Node.js ? Transformez votre expertise en revenu supplémentaire !

Équipe de soutien Iron

Nous sommes en ligne 24 heures sur 24, 5 jours sur 7.
Chat
Email
Appelez-moi