Lavorare con JSON e XML
Elabori dati strutturati usando JSON e XML nelle applicazioni C#
Lavorare con JSON e XML è una lezione C# Academy gratuita su CoddyKit. Questa è la lezione 2 di 5. Puoi leggere la lezione completa qui gratuitamente — poi esercitati direttamente nel browser con un editor di codice integrato e un tutor IA disponibile 24/7. Fa parte del percorso di apprendimento C# Academy, e i tuoi progressi si sincronizzano tra il web e l'app CoddyKit. Il corso C# Academy include 5 lezioni in totale.
Introduzione a JSON e XML
Lavorare con JSON e XML
Eccoci alla prossima lezione! In questa lezione imparerà a lavorare con JSON e XML in C#, due formati comuni per archiviare e scambiare dati. Iniziamo!

Che cos'è JSON?
Che cos'è JSON?
JSON (JavaScript Object Notation) è un formato leggero per lo scambio di dati. È facile da leggere e scrivere per le persone e da analizzare e generare per le macchine.
Esempio:
{
"name": "Alice",
"age": 25,
"city": "New York"
}
Suggerimento: JSON viene comunemente usato per le API e lo scambio di dati tra applicazioni.
Lavorare con JSON in C#
Lavorare con JSON in C#
Può usare lo spazio dei nomi System.Text.Json per lavorare con JSON in C#. Ecco un esempio:
Punto chiave: Usi JsonSerializer per elaborare JSON in modo semplice ed efficiente.
using System;
using System.Text.Json;
class Program {
static void Main() {
string json = "{\"name\":\"Alice\",\"age\":25,\"city\":\"New York\"}";
// Deserialize JSON to an object
var person = JsonSerializer.Deserialize<Person>(json);
Console.WriteLine($"Name: {person.Name}, Age: {person.Age}, City: {person.City}");
// Serialize an object to JSON
string newJson = JsonSerializer.Serialize(person);
Console.WriteLine("Serialized JSON: " + newJson);
}
}
class Person {
public string Name { get; set; }
public int Age { get; set; }
public string City { get; set; }
}
Che cos'è XML?
Che cos'è XML?
XML (eXtensible Markup Language) è un formato testuale flessibile per dati strutturati. Viene comunemente usato per l'archiviazione dei dati e nei file di configurazione.
Esempio:
Alice 25 New York
Suggerimento: XML è più verboso di JSON, ma supporta strutture e metadati più complessi.
Lavorare con XML in C#
Lavorare con XML in C#
Può usare lo spazio dei nomi System.Xml per lavorare con XML in C#. Ecco un esempio:
Punto chiave: Usi XmlSerializer per convertire gli oggetti da e verso XML.
using System;
using System.Xml.Serialization;
using System.IO;
class Program {
static void Main() {
string xml = "<Person><Name>Alice</Name><Age>25</Age><City>New York</City></Person>";
// Deserialize XML to an object
var serializer = new XmlSerializer(typeof(Person));
using (var reader = new StringReader(xml)) {
var person = (Person)serializer.Deserialize(reader);
Console.WriteLine($"Name: {person.Name}, Age: {person.Age}, City: {person.City}");
}
// Serialize an object to XML
var newPerson = new Person { Name = "Bob", Age = 30, City = "San Francisco" };
using (var writer = new StringWriter()) {
serializer.Serialize(writer, newPerson);
Console.WriteLine("Serialized XML: " + writer.ToString());
}
}
}
public class Person {
public string Name { get; set; }
public int Age { get; set; }
public string City { get; set; }
}
JSON e XML a confronto
JSON e XML a confronto
Ecco un confronto tra JSON e XML:
- JSON: leggero, facile da leggere e scrivere, ideale per le API e le applicazioni moderne.
- XML: più verboso, supporta strutture complesse ed è ampiamente usato nei sistemi legacy e nelle configurazioni.
Suggerimento: Scelga il formato in base al caso d'uso e alla complessità dei dati.
Esercizio pratico
Esercizio pratico
Crei un programma che serializzi un elenco di oggetti nei formati JSON e XML e poi li deserializzi nuovamente in oggetti. Ecco un esempio:
using System;
using System.Collections.Generic;
using System.Text.Json;
using System.Xml.Serialization;
using System.IO;
class Program {
static void Main() {
var people = new List<Person> {
new Person { Name = "Alice", Age = 25, City = "New York" },
new Person { Name = "Bob", Age = 30, City = "San Francisco" }
};
// Serialize to JSON
string json = JsonSerializer.Serialize(people);
Console.WriteLine("JSON:\n" + json);
// Serialize to XML
var serializer = new XmlSerializer(typeof(List<Person>));
using (var writer = new StringWriter()) {
serializer.Serialize(writer, people);
Console.WriteLine("XML:\n" + writer.ToString());
}
}
}
public class Person {
public string Name { get; set; }
public int Age { get; set; }
public string City { get; set; }
}
Buone pratiche per JSON e XML
Buone pratiche per JSON e XML
Ecco alcune buone pratiche:
- Usi JSON per lo scambio di dati leggeri e leggibili.
- Usi XML per strutture complesse e configurazioni ricche di metadati.
- Convalidi i formati dei dati per garantire la compatibilità.
Suggerimento: Quando necessario, usi librerie come Newtonsoft.Json per elaborare JSON in modo avanzato.
Riepilogo di JSON e XML
Ottimo lavoro!
Congratulazioni! Ha imparato a lavorare con JSON e XML per archiviare e scambiare dati in C#. Nella prossima lezione esploreremo la gestione delle eccezioni per rendere i programmi più robusti. Continuiamo a programmare!

Domande Frequenti
La lezione «Lavorare con JSON e XML» è gratuita?
Sì — il testo completo di «Lavorare con JSON e XML» è gratuito qui sul web. Per esercitarvi in modo interattivo (un editor di codice integrato e un tutor IA 24/7) e sbloccare il resto del corso C# Academy, passa a CoddyKit PRO. Il corso C# Academy include 5 lezioni in totale.
Cosa imparerò in «Lavorare con JSON e XML»?
Elabori dati strutturati usando JSON e XML nelle applicazioni C# Eserciti C# Academy con codice pratico che esegui direttamente nel browser, e un tutor IA 24/7 risponde alle tue domande mentre lavori sulla lezione.
Ho bisogno di esperienza per iniziare C# Academy?
Non è richiesta alcuna esperienza precedente. C# Academy su CoddyKit è strutturato per principianti e studenti avanzati, quindi puoi iniziare da qui o dall'inizio e procedere al tuo ritmo. Questa è la lezione 2 di 5.
Quanto tempo richiede la lezione «Lavorare con JSON e XML»?
La maggior parte delle lezioni CoddyKit richiede circa 5–10 minuti. Ogni lezione è breve e interattiva, quindi fai progressi costanti e riprendi esattamente da dove hai lasciato su web e app.
Posso scrivere ed eseguire codice in questa lezione C# Academy?
Sì. Ogni lezione C# Academy include un editor di codice integrato, quindi scrivi ed esegui codice reale direttamente nel tuo browser e ricevi feedback istantaneo dall'IA — nessuna configurazione locale necessaria.
Tutte le lezioni di questo corso
- Leggere e scrivere file
- Lavorare con JSON e XML
- Capire la gestione delle eccezioni
- Lavorare con i database
- Usare LINQ per le query sui dati