Praca z JSON i XML
Przetwarzaj ustrukturyzowane dane JSON i XML w aplikacjach C#
Praca z JSON i XML to bezpłatna lekcja C# Academy na CoddyKit. To lekcja 2 z 5. Możesz przeczytać całą lekcję poniżej za darmo — a potem ćwiczyć ją interaktywnie w przeglądarce z wbudowanym edytorem kodu i tutorem AI dostępnym 24/7. To część ścieżki edukacyjnej C# Academy, a Twój postęp synchronizuje się między webem a aplikacją CoddyKit. Kurs C# Academy zawiera 5 lekcji w sumie.
Wprowadzenie do JSON i XML
Praca z JSON i XML
Witamy na kolejnej lekcji! W tej lekcji dowiedzą się Państwo, jak pracować z JSON i XML w języku C# — dwoma popularnymi formatami przechowywania i wymiany danych. Zaczynajmy!

Czym jest JSON?
Czym jest JSON?
JSON (JavaScript Object Notation) to lekki format wymiany danych. Jest łatwy do odczytu i zapisu przez ludzi oraz do parsowania i generowania przez maszyny.
Przykład:
{
"name": "Alice",
"age": 25,
"city": "New York"
}
Wskazówka: JSON jest powszechnie używany w interfejsach API oraz do wymiany danych między aplikacjami.
Praca z JSON w języku C#
Praca z JSON w języku C#
Do pracy z JSON w języku C# można używać przestrzeni nazw System.Text.Json. Przykład:
Najważniejsze: Do prostego i wydajnego przetwarzania danych JSON należy używać JsonSerializer.
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; }
}
Czym jest XML?
Czym jest XML?
XML (eXtensible Markup Language) to elastyczny format tekstowy służący do przechowywania danych strukturalnych. Jest powszechnie używany do przechowywania danych i w plikach konfiguracyjnych.
Przykład:
Alice 25 New York
Wskazówka: XML jest bardziej rozwlekły niż JSON, ale obsługuje bardziej złożone struktury i metadane.
Praca z XML w języku C#
Praca z XML w języku C#
Do pracy z XML w języku C# można używać przestrzeni nazw System.Xml. Przykład:
Najważniejsze: Do konwertowania obiektów na format XML i z formatu XML należy używać XmlSerializer.
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 a XML
JSON a XML
Oto porównanie JSON i XML:
- JSON: Lekki, łatwy do odczytu i zapisu, idealny dla interfejsów API i nowoczesnych aplikacji.
- XML: Bardziej rozwlekły, obsługuje złożone struktury, szeroko stosowany w starszych systemach i konfiguracjach.
Wskazówka: Format należy wybrać na podstawie konkretnego zastosowania i złożoności danych.
Zadanie praktyczne
Zadanie praktyczne
Należy utworzyć program, który serializuje listę obiektów do formatów JSON i XML, a następnie deserializuje je z powrotem do obiektów. Przykład:
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; }
}
Dobre praktyki dotyczące JSON i XML
Dobre praktyki dotyczące JSON i XML
Oto kilka dobrych praktyk:
- JSON należy stosować do lekkiej i czytelnej dla człowieka wymiany danych.
- XML należy stosować do złożonych struktur i konfiguracji zawierających dużo metadanych.
- Należy weryfikować formaty danych, aby zapewnić zgodność.
Wskazówka: W razie potrzeby do zaawansowanego przetwarzania JSON należy używać bibliotek takich jak Newtonsoft.Json.
Podsumowanie JSON i XML
Świetna robota!
Gratulacje! Nauczyli się Państwo, jak pracować z JSON i XML w celu przechowywania i wymiany danych w języku C#. W następnej lekcji poznają Państwo obsługę wyjątków, dzięki której programy będą bardziej odporne na błędy. Kodujmy dalej!

Często zadawane pytania
Czy lekcja „Praca z JSON i XML” jest bezpłatna?
Tak — pełny tekst „Praca z JSON i XML” jest dostępny za darmo tutaj w sieci. Aby ćwiczyć ją interaktywnie (wbudowany edytor kodu i tutor AI dostępny 24/7) i odblokować resztę kursu C# Academy, przejdź na CoddyKit PRO. Kurs C# Academy zawiera 5 lekcji w sumie.
Co nauczysz się w „Praca z JSON i XML”?
Przetwarzaj ustrukturyzowane dane JSON i XML w aplikacjach C# Ćwiczysz C# Academy z praktycznym kodem, który uruchamiasz bezpośrednio w przeglądarce, a tutor AI dostępny 24/7 odpowiada na Twoje pytania podczas pracy nad lekcją.
Czy potrzebuję doświadczenia, aby zacząć C# Academy?
Nie wymagamy żadnego doświadczenia. C# Academy w CoddyKit jest strukturyzowany dla początkujących i zaawansowanych użytkowników, więc możesz zacząć tutaj lub od początku i uczyć się w swoim tempie. To lekcja 2 z 5.
Ile czasu zajmuje lekcja „Praca z JSON i XML”?
Większość lekcji CoddyKit trwa około 5–10 minut. Każda lekcja to mały, interaktywny krok, dzięki czemu robisz systematyczne postępy i zawsze wracasz dokładnie do tego samego miejsca — na webie i w aplikacji.
Czy mogę pisać i uruchamiać kod w tej lekcji C# Academy?
Tak. Każda lekcja C# Academy zawiera wbudowany edytor kodu, więc piszesz i uruchamiasz prawdziwy kod bezpośrednio w przeglądarce i od razu otrzymujesz sprzężenie zwrotne od AI — bez konfiguracji na komputerze.
Wszystkie lekcje w tym kursie
- Odczytywanie i zapisywanie plików
- Praca z JSON i XML
- Obsługa wyjątków
- Praca z bazami danych
- Używanie LINQ do zapytań dotyczących danych