Форум программистов, компьютерный форум, киберфорум
C# .NET
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.86/7: Рейтинг темы: голосов - 7, средняя оценка - 4.86
9 / 9 / 3
Регистрация: 11.10.2014
Сообщений: 363

Как осуществить десериализацию json?

18.03.2017, 22:52. Показов 1479. Ответов 4
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Помогите осуществить "разбор" данного json
а конкретно мне нужно получить next_max_id, и pk каждого "элемента" users
Кликните здесь для просмотра всего текста
JSON
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
{
   "big_list": true,
   "status": "ok",
   "next_max_id": 1489834782000,
   "users": [
      {
         "full_name": "",
         "username": "danil.k11",
         "has_anonymous_profile_picture": false,
         "profile_pic_id": "1359474833788542153_2288546132",
         "profile_pic_url": "http://scontent.cdninstagram.com/t51.2885-19/s150x150/14701132_1229911757050543_7125676964010000384_a.jpg",
         "pk": 2288546132,
         "is_private": true,
         "is_verified": false
      },
      {
         "full_name": "",
         "username": "l1kzar___",
         "has_anonymous_profile_picture": false,
         "is_verified": false,
         "profile_pic_url": "http://scontent.cdninstagram.com/t51.2885-19/11419234_635833133185425_1725330307_a.jpg",
         "pk": 1724589298,
         "is_private": false
      },
      {
         "full_name": "Олександра",
         "username": "oleksandrasaliy",
         "has_anonymous_profile_picture": false,
         "profile_pic_id": "1473218684305881387_4740496371",
         "profile_pic_url": "http://scontent.cdninstagram.com/t51.2885-19/s150x150/17333623_1871547393103069_2105341295747661824_a.jpg",
         "pk": 4740496371,
         "is_private": false,
         "is_verified": false
      }
   ],
   "page_size": 200
}

Обычный строковой json могу "разобрать" без проблем, а вот с такими сложно мне, не понимаю, научите)
Желательно бы Newtonsoft.JSON
0
Лучшие ответы (1)
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
18.03.2017, 22:52
Ответы с готовыми решениями:

Как использовать XML-десериализацию
Здравтсвуйте, помогите десериализовать следущий хмл документ. <response> <0 uid="15782229"...

Как выполнить десериализацию полученного объекта из потока сокета?
Доброго времени суток уважаемые программисты, подскажите пожалуйста как мне выполнить десериализацию полученного объекта из потока сокета....

Как правильно организовать сериализацию и десериализацию в XML?
использую и public static void serilaze<T>(T vector, string filename) { XmlSerializer writer = new...

4
907 / 664 / 318
Регистрация: 23.10.2016
Сообщений: 1,543
18.03.2017, 23:25
Лучший ответ Сообщение было отмечено INstantKiLLer как решение

Решение

http://json2csharp.com/
Кликните здесь для просмотра всего текста
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
public class User
{
    public string full_name { get; set; }
    public string username { get; set; }
    public bool has_anonymous_profile_picture { get; set; }
    public string profile_pic_id { get; set; }
    public string profile_pic_url { get; set; }
    public object pk { get; set; }
    public bool is_private { get; set; }
    public bool is_verified { get; set; }
}
 
public class RootObject
{
    public bool big_list { get; set; }
    public string status { get; set; }
    public long next_max_id { get; set; }
    public List<User> users { get; set; }
    public int page_size { get; set; }
}
 
string text = @"
{
   ""big_list"": true,
   ""status"": ""ok"",
   ""next_max_id"": 1489834782000,
   ""users"": [
      {
         ""full_name"": """",
         ""username"": ""danil.k11"",
         ""has_anonymous_profile_picture"": false,
         ""profile_pic_id"": ""1359474833788542153_2288546132"",
         ""profile_pic_url"": ""http://scontent.cdninstagram.com/t51.2885-19/s150x150/14701132_1229911757050543_7125676964010000384_a.jpg"",
         ""pk"": 2288546132,
         ""is_private"": true,
         ""is_verified"": false
      },
      {
    ""full_name"": """",
         ""username"": ""l1kzar___"",
         ""has_anonymous_profile_picture"": false,
         ""is_verified"": false,
         ""profile_pic_url"": ""http://scontent.cdninstagram.com/t51.2885-19/11419234_635833133185425_1725330307_a.jpg"",
         ""pk"": 1724589298,
         ""is_private"": false
      },
      {
    ""full_name"": ""Олександра"",
         ""username"": ""oleksandrasaliy"",
         ""has_anonymous_profile_picture"": false,
         ""profile_pic_id"": ""1473218684305881387_4740496371"",
         ""profile_pic_url"": ""http://scontent.cdninstagram.com/t51.2885-19/s150x150/17333623_1871547393103069_2105341295747661824_a.jpg"",
         ""pk"": 4740496371,
         ""is_private"": false,
         ""is_verified"": false
      }
   ],
   ""page_size"": 200
}";
 
void Main()
{
    var root = JsonConvert.DeserializeObject<RootObject>(text);
    Console.WriteLine(root.next_max_id);
    
    foreach (var user in root.users)
        Console.WriteLine(user.pk);
}
1
9 / 9 / 3
Регистрация: 11.10.2014
Сообщений: 363
18.03.2017, 23:38  [ТС]
Цитата Сообщение от TopLayer Посмотреть сообщение
http://json2csharp.com/
а еще, я получаю от сервера ответ json и он в одну строку, не форматированный (или не валидный еще по-моему называется), а когда он не валидированный, то desiarilize ошибку выдает, или все нормально?
как его форматировать или валидировать?
и за сайт отдельное спасибо)
0
907 / 664 / 318
Регистрация: 23.10.2016
Сообщений: 1,543
18.03.2017, 23:43
Цитата Сообщение от INstantKiLLer Посмотреть сообщение
а когда он не валидированный, то desiarilize ошибку выдает, или все нормально
может выдать, а может нет. То, что Json в одну строку - это нормально, форматирование для человека, а компьютеру пофиг.
1
3 / 3 / 0
Регистрация: 25.09.2009
Сообщений: 122
21.03.2017, 12:40
Вам нужно создать класс с полями из ваших JSON-данных и десериализовывать эти классы.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
21.03.2017, 12:40
Помогаю со студенческими работами здесь

Как реализовать десериализацию нескольких классов в dataGridView?
private void button2_Click(object sender, EventArgs e) { var GetList= JournalInfo1.Deserialize(&quot;example.xml&quot;); ...

Как реализовать десериализацию в этом коде с использованием Async Await?
Вот в этот код. private void button2_Click(object sender, EventArgs e) { { ...

Как в Python реализовать сериализацию и десериализацию?
Как в Python реализовать сериализацию и десериализацию?

Как сделать сериализацию и десериализацию в данном коде?
Patient: id, Фамилия, Имя, Отчество, Адрес, Телефон, Номер медицинской карты, Диагноз. Создать массив объектов. Вывести: a. список...

Как сделать десериализацию ответа от Google Speech API v2
Всем привет. Объясните как сделать десериализацию ответа от Google Speech API v2. Нужно добраться до &quot;купить велосипед&quot;. Вот...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru