C# JSON

// Utworzenie klasy Person
    internal class Person
    {
        public int Id { get; set; }
        public string Name { get; set; }
        public int Age {  get; set; }


    }
    
// Utworzenie obiektu klasy Person i zapisanie go w pliku JSON
    
public MainWindow()
{
    InitializeComponent();
    Person person = new()
    {
        Age = 35,
        Name = "Alexo",
        Id = 1
    };
    JsonSerialize(person);
}

void JsonSerialize(Person p)
{
    var json = JsonSerializer.Serialize(p);
    using StreamWriter sw = new("People.json");
    sw.WriteLine(json);
    sw.Close();
}

Odczytanie zawartość json do obiektu (deserializacja)

    Person person;
    public MainWindow()
    {
        InitializeComponent();

        Person p = JsonDeserialize();
        lbl.Content = p.Name + " " + p.Age;
    }

    Person JsonDeserialize()
    {
        using StreamReader sr = new("People.json");
        var personJson = sr.ReadLine();
        var person = JsonSerializer.Deserialize<Person>(personJson);
        return person;
    }

Zamiana listy na json i zapis do pliku

        public MainWindow()
        {
            InitializeComponent();

            var people = new List<Person>()
            {
                new(){Age = 18, Name = "Anna"},
                new(){Age = 22, Name = "Bebo"},
                new(){Age = 26, Name = "Gumbo"}
            };
            JsonSerialize(people);
        }

        static void JsonSerialize(List<Person> p)
        {
            var json = JsonSerializer.Serialize(p);
            using StreamWriter sw = new("People.json");
            sw.WriteLine(json);
            sw.Close();
        }

Odczytanie listy z pliku json

public MainWindow()
{
    InitializeComponent();

    var people = JsonDeserialize();
    string peoplestr = "";
    foreach (var person in people)
    {
        peoplestr += person.Name + "\n\r";
    }
    lbl.Content = peoplestr;
}

List<Person> JsonDeserialize()
{
    using StreamReader sr = new("People.json");
    var personJson = sr.ReadLine();
    var person = JsonSerializer.Deserialize<List<Person>>(personJson);
    return person;
}

Scroll to Top