C#:
Работа с JSON
Как:
В C# для обработки JSON скорее всего будет использоваться пространство имен System.Text.Json
. Допустим, у вас есть простой класс:
public class Gamer
{
public string GamerTag { get; set; }
public int HighScore { get; set; }
}
Чтобы сериализовать этот объект в JSON, делайте следующее:
var gamer = new Gamer { GamerTag = "PlayerOne", HighScore = 9001 };
string jsonString = JsonSerializer.Serialize(gamer);
Console.WriteLine(jsonString);
Вывод:
{"GamerTag":"PlayerOne","HighScore":9001}
Чтобы десериализовать из JSON обратно в объект:
string jsonString = "{\"GamerTag\":\"PlayerOne\",\"HighScore\":9001}";
Gamer gamer = JsonSerializer.Deserialize<Gamer>(jsonString);
Console.WriteLine($"GamerTag: {gamer.GamerTag}, HighScore: {gamer.HighScore}");
Вывод:
GamerTag: PlayerOne, HighScore: 9001
Подробнее
JSON является предпочтительным форматом данных с начала 2000-х годов, вытеснив XML благодаря своей простоте. Хотя сейчас в C# для .NET Core и .NET 5+ предпочтительной библиотекой является System.Text.Json
, библиотека Newtonsoft.Json
многие годы была фактическим стандартом. System.Text.Json
сосредоточена на высокой производительности и низком расходе памяти, но Newtonsoft.Json
по-прежнему обладает более широким набором функций, который может потребоваться в некоторых приложениях.
См. также
- Документация Microsoft по
System.Text.Json
: https://docs.microsoft.com/dotnet/standard/serialization/system-text-json-overview - Newtonsoft.Json (Json.NET): https://www.newtonsoft.com/json
- Спецификация JSON: https://www.json.org/json-en.html