0Pricing
C# Academy · Урок

Работа с JSON и XML

Обрабатывайте структурированные данные с помощью JSON и XML в приложениях на C#

«Работа с JSON и XML» — бесплатный урок C# Academy на CoddyKit. Это урок 2 из 5. Ты можешь прочитать весь урок бесплатно ниже — а потом практиковать его прямо в браузере с встроенным редактором кода и ИИ-репетитором 24/7. Это часть пути обучения C# Academy, и твой прогресс синхронизируется между веб-версией и приложением CoddyKit. Курс C# Academy содержит 5 уроков всего.

Введение в JSON и XML

Работа с JSON и XML

Добро пожаловать на следующий урок! На этом уроке Вы научитесь работать с JSON и XML в C# — двумя распространёнными форматами для хранения и обмена данными. Начнём!

Работа с JSON и XML — иллюстрация 1

Что такое JSON?

Что такое JSON?

JSON (объектная нотация JavaScript) — это лёгкий формат обмена данными. Его легко читать и записывать людям, а компьютерам легко разбирать и создавать его.

Пример:

{
  "name": "Alice",
  "age": 25,
  "city": "New York"
}

Совет: JSON часто используется в API и для обмена данными между приложениями.

Работа с JSON в C#

Работа с JSON в C#

Для работы с JSON в C# можно использовать пространство имён System.Text.Json. Пример:

Главное: Используйте JsonSerializer для простой и эффективной обработки JSON.

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; }
}

Что такое XML?

Что такое XML?

XML (eXtensible Markup Language — расширяемый язык разметки) — это гибкий текстовый формат для структурированных данных. Его часто используют для хранения данных и файлов конфигурации.

Пример:


  Alice
  25
  New York

Совет: XML более многословен, чем JSON, но поддерживает более сложные структуры и метаданные.

Работа с XML в C#

Работа с XML в C#

Для работы с XML в C# можно использовать пространство имён System.Xml. Пример:

Главное: Используйте XmlSerializer для преобразования объектов в 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 и XML

JSON и XML

Сравним JSON и XML:

  • JSON: лёгкий формат, который легко читать и записывать; идеально подходит для API и современных приложений.
  • XML: более многословный формат, поддерживающий сложные структуры; широко используется в устаревших системах и конфигурациях.

Совет: Выбирайте формат с учётом задачи и сложности данных.

Практическое задание

Практическое задание

Создайте программу, которая сериализует список объектов в форматы JSON и XML, а затем десериализует их обратно в объекты. Пример:

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; }
}

Рекомендации по работе с JSON и XML

Рекомендации по работе с JSON и XML

Вот несколько рекомендаций:

  • Используйте JSON для лёгкого и понятного человеку обмена данными.
  • Используйте XML для сложных структур и конфигураций с большим количеством метаданных.
  • Проверяйте форматы данных, чтобы обеспечить совместимость.

Совет: При необходимости используйте библиотеки, например Newtonsoft.Json, для расширенной обработки JSON.

Повторение: JSON и XML

Отличная работа!

Поздравляем! Вы научились работать с JSON и XML для хранения и обмена данными в C#. На следующем уроке мы изучим обработку исключений, чтобы сделать Ваши программы более надёжными. Продолжим программировать!

Работа с JSON и XML — иллюстрация 10

Часто задаваемые вопросы

Урок «Работа с JSON и XML» бесплатный?

Да — полный текст урока «Работа с JSON и XML» бесплатно доступен здесь в веб-версии. Чтобы практиковать его интерактивно (встроенный редактор кода и ИИ-репетитор 24/7) и разблокировать остальной курс C# Academy, подпишись на CoddyKit PRO. Курс C# Academy содержит 5 уроков всего.

Чему я научусь в уроке «Работа с JSON и XML»?

Обрабатывайте структурированные данные с помощью JSON и XML в приложениях на C# Ты практикуешь C# Academy с помощью реального кода, который запускаешь прямо в браузере, и ИИ-репетитор 24/7 отвечает на твои вопросы во время урока.

Нужен ли мне опыт, чтобы начать C# Academy?

Предыдущий опыт не требуется. C# Academy на CoddyKit структурирован для всех уровней — от новичков до продвинутых, поэтому ты можешь начать отсюда или с самого начала и учиться в своем темпе. Это урок 2 из 5.

Сколько времени занимает урок «Работа с JSON и XML»?

Большинство уроков CoddyKit занимают около 5–10 минут. Каждый из них компактный и интерактивный, поэтому ты постоянно делаешь прогресс и продолжаешь с того же места в веб-версии и приложении.

Можно ли писать и запускать код в этом уроке C# Academy?

Да. Каждый урок C# Academy включает встроенный редактор кода, поэтому ты пишешь и запускаешь реальный код прямо в браузере и получаешь моментальную обратную связь от AI — локальная установка не требуется.

Все уроки этого курса

  1. Чтение и запись файлов
  2. Работа с JSON и XML
  3. Обработка исключений
  4. Работа с базами данных
  5. Использование LINQ для запросов к данным
← Назад к C# Academy