Форум программистов, компьютерный форум, киберфорум
Наши страницы

C# для начинающих

Войти
Регистрация
Восстановить пароль
 
GAMEKILLER
0 / 0 / 0
Регистрация: 19.03.2016
Сообщений: 33
#1

.NET 4.x Чтение JSON: получение названий - C#

14.05.2016, 11:08. Просмотров 411. Ответов 8
Метки нет (Все метки)

Привет!
У меня есть файл CM.json
Его содержимое (Я скопировал нужную часть кода):
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
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
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
 "libraries": [
    {
      "name": "com.mumfrey:liteloader:1.7.10",
      "url": "http://dl.liteloader.com/versions/"
    },
    {
      "name": "net.minecraft:launchwrapper:1.11"
    },
    {
      "name": "org.ow2.asm:asm-all:5.0.3"
    },
    {
      "name": "com.google.guava:guava:16.0"
    },
    {
      "name": "net.minecraftforge:forge:1.7.10-10.13.4.1558-1.7.10",
      "url": "http://files.minecraftforge.net/maven/"
    },
    {
      "name": "net.minecraft:launchwrapper:1.12"
    },
    {
      "name": "org.ow2.asm:asm-all:5.0.3"
    },
    {
      "name": "com.typesafe.akka:akka-actor_2.11:2.3.3",
      "url": "http://files.minecraftforge.net/maven/"
    },
    {
      "name": "com.typesafe:config:1.2.1",
      "url": "http://files.minecraftforge.net/maven/"
    },
    {
      "name": "org.scala-lang:scala-actors-migration_2.11:1.1.0",
      "url": "http://files.minecraftforge.net/maven/"
    },
    {
      "name": "org.scala-lang:scala-compiler:2.11.1",
      "url": "http://files.minecraftforge.net/maven/"
    },
    {
      "name": "org.scala-lang.plugins:scala-continuations-library_2.11:1.0.2",
      "url": "http://files.minecraftforge.net/maven/"
    },
    {
      "name": "org.scala-lang.plugins:scala-continuations-plugin_2.11.1:1.0.2",
      "url": "http://files.minecraftforge.net/maven/"
    },
    {
      "name": "org.scala-lang:scala-library:2.11.1",
      "url": "http://files.minecraftforge.net/maven/"
    },
    {
      "name": "org.scala-lang:scala-parser-combinators_2.11:1.0.1",
      "url": "http://files.minecraftforge.net/maven/"
    },
    {
      "name": "org.scala-lang:scala-reflect:2.11.1",
      "url": "http://files.minecraftforge.net/maven/"
    },
    {
      "name": "org.scala-lang:scala-swing_2.11:1.0.1",
      "url": "http://files.minecraftforge.net/maven/"
    },
    {
      "name": "org.scala-lang:scala-xml_2.11:1.0.2",
      "url": "http://files.minecraftforge.net/maven/"
    },
    {
      "name": "lzma:lzma:0.0.1"
    },
    {
      "name": "net.sf.jopt-simple:jopt-simple:4.5"
    },
    {
      "name": "com.google.guava:guava:17.0"
    },
    {
      "name": "org.apache.commons:commons-lang3:3.3.2"
    },
    {
      "name": "com.mojang:netty:1.6"
    },
    {
      "name": "com.mojang:realms:1.3.5"
    },
    {
      "name": "org.apache.commons:commons-compress:1.8.1"
    },
    {
      "name": "org.apache.httpcomponents:httpclient:4.3.3"
    },
    {
      "name": "commons-logging:commons-logging:1.1.3"
    },
    {
      "name": "org.apache.httpcomponents:httpcore:4.3.2"
    },
    {
      "name": "java3d:vecmath:1.3.1"
    },
    {
      "name": "net.sf.trove4j:trove4j:3.0.3"
    },
    {
      "name": "com.ibm.icu:icu4j-core-mojang:51.2"
    },
    {
      "name": "net.sf.jopt-simple:jopt-simple:4.5"
    },
    {
      "name": "com.paulscode:codecjorbis:20101023"
    },
    {
      "name": "com.paulscode:codecwav:20101023"
    },
    {
      "name": "com.paulscode:libraryjavasound:20101123"
    },
    {
      "name": "com.paulscode:librarylwjglopenal:20100824"
    },
    {
      "name": "com.paulscode:soundsystem:20120107"
    },
    {
      "name": "io.netty:netty-all:4.0.10.Final"
    },
    {
      "name": "com.google.guava:guava:15.0"
    },
    {
      "name": "org.apache.commons:commons-lang3:3.1"
    },
    {
      "name": "commons-io:commons-io:2.4"
    },
    {
      "name": "commons-codec:commons-codec:1.9"
    },
    {
      "name": "net.java.jinput:jinput:2.0.5"
    },
    {
      "name": "net.java.jutils:jutils:1.0.0"
    },
    {
      "name": "com.google.code.gson:gson:2.2.4"
    },
    {
      "name": "com.mojang:authlib:1.5.21"
    },
    {
      "name": "org.apache.logging.log4j:log4j-api:2.0-beta9"
    },
    {
      "name": "org.apache.logging.log4j:log4j-core:2.0-beta9"
    },
    {
      "name": "org.lwjgl.lwjgl:lwjgl:2.9.1"
    },
    {
      "name": "org.lwjgl.lwjgl:lwjgl_util:2.9.1"
    },
Я использую библиотеки JSON (Разные), и как мне сделать чтобы все эти названия были в одну строку по очереди?
Допустим запихать их в string:
C#
1
string libs = "com.mumfrey:liteloader:1.7.10;net.minecraft:launchwrapper:1.11;" //и так далее (только автоматизировано)
и т.д
Буду благодарен за код
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
14.05.2016, 11:08
Здравствуйте! Я подобрал для вас темы с ответами на вопрос .NET 4.x Чтение JSON: получение названий (C#):

Чтение JSON-файла с помощью Newtonsoft.Json - C#
И так, у нас есть JSon-файл вот такого типа: { "objects": { "minecraft/sounds/entity/rabbit/attack2.ogg": { "hash":...

Поиск по Json и получение нужного ID - C#
Доброго времени суток. Получаю Json: {"meta":{"code":200},"data": } Сериализую его: public class Meta { public...

.NET 4.x [Json] Получение значений атрибутов - C#
Доброго времени суток! Как можно вытащить значение атрибутов в данной файле? Конкретно нужно узнать значение username, state, name, age,...

Чтение JSON - C#
Добрый день/вечер! Сломал всю голову, подключился к longpoll серверу, получаю ответ: { ts: 196851352, updates: , , 85635407,...

Получение данных после десериализации JSON - C#
Пытался найти способ десериализовывать json без добавления лишних структур в проект (как это делается в newtonsoft) при помощи динамичных...

Чтение JSON файла - C#
Здравствуйте! Только начал работать с json, нужна помощь знающих. Помогите пожалуйста с проблемой: Есть json-файл такого типа: { ...

8
SashaPl
49 / 36 / 3
Регистрация: 25.06.2014
Сообщений: 406
Завершенные тесты: 3
14.05.2016, 16:35 #2
C#
1
2
3
4
5
6
7
8
JObject jobject = JObject.Parse(File.ReadAllText("полное имя файла"));
StringBuilder res = new StringBuilder();
for (int i = 0; i < jobject["libraries"].Count(); i++)
    {
        res.Append(jobject["libraries"][i]["name"] +"; ");
    }
Console.WriteLine(res);
Console.ReadKey();
Использовал библиотеку Json.NET.
0
GAMEKILLER
0 / 0 / 0
Регистрация: 19.03.2016
Сообщений: 33
15.05.2016, 17:50  [ТС] #3
SashaPl, Спасибо!
Но хотелось бы дополнить, что это нужно использовать как путь до программы.
Если можете, помогите пожалуйста.
Ваш код нужно дополнить так , что-бы (к примеру взял первое название) из:
com.mumfrey:liteloader:1.7.10
, получить:
.com\mumfrey\liteloader\1.7.10
, т.е, можно сказать просто поменять на слеши, а также полсе чего дополнить названием файла .jar (строится название по такой схеме:
всё, что после двоеточия - это название файла, например:
com.mumfrey:liteloader:1.7.10 -> .com\mumfrey\liteloader\1.7.10 -> .com\mumfrey\liteloader\1.7.10\liteloader-1.7.10.jar
:liteloader:1.7.10 -> liteloader-1.7.10.jar
После первого двоеточия идёт как-бы и путь до файла и также название файла. После второго двоеточия в названии файла вместо двоеточия, пишется дефис).
И в итоге, хотелось-бы получилось что-то такое:
C#
1
string libs = @".com\mumfrey\liteloader\1.7.10\liteloader-1.7.10.jar;.net\minecraft\launchwrapper\1.11\launchwrapper-1.11.jar;" //и так далее (только автоматизировано)
Если кто знает как это сделать, дайте код, пожалуйста.
0
SashaPl
49 / 36 / 3
Регистрация: 25.06.2014
Сообщений: 406
Завершенные тесты: 3
15.05.2016, 21:27 #4
GAMEKILLER, используй String.Replace(Char, Char).
Заменяешь это:
C#
1
res.Append(jobject["libraries"][i]["name"] +"; ");
На это:
C#
1
res.Append(jobject["libraries"][i]["name"].Replace(':', '\'); +".jar;");
0
GAMEKILLER
0 / 0 / 0
Регистрация: 19.03.2016
Сообщений: 33
16.05.2016, 21:07  [ТС] #5
SashaPl, Ошибочка
0
SashaPl
49 / 36 / 3
Регистрация: 25.06.2014
Сообщений: 406
Завершенные тесты: 3
16.05.2016, 21:22 #6
GAMEKILLER,
C#
1
res.Append(jobject["libraries"][i]["name"].ToString().Replace(':', '\\') + ".jar;");
Вот так робит.
0
GAMEKILLER
0 / 0 / 0
Регистрация: 19.03.2016
Сообщений: 33
17.05.2016, 06:11  [ТС] #7
SashaPl, Робит, только не что надо
0
SashaPl
49 / 36 / 3
Регистрация: 25.06.2014
Сообщений: 406
Завершенные тесты: 3
17.05.2016, 15:35 #8
GAMEKILLER, что не так?
0
GAMEKILLER
0 / 0 / 0
Регистрация: 19.03.2016
Сообщений: 33
17.05.2016, 15:58  [ТС] #9
SashaPl,
И в итоге, хотелось-бы получилось что-то такое:
C#
1
string libs = @".com\mumfrey\liteloader\1.7.10\liteloader-1.7.10.jar;.net\minecraft\launchwrapper\1.11\launchwrapper-1.11.jar;" //и так далее (только автоматизировано)
Если кто знает как это сделать, дайте код, пожалуйста.
Вообщем, как это: .com\mumfrey\liteloader\1.7.10\liteloader-1.7.10.jar
, похоже на это: .com.mumfrey\liteloader\1.7.10.jar
0
17.05.2016, 15:58
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
17.05.2016, 15:58
Привет! Вот еще темы с ответами:

Получение Json (зависает при долгом использовании функции) - C#
Здравствуйте. После (примерно) 7-ми минут работы программы поток останавливается на этапе получения Json из сайта Telegram. Остальное...

Чтение файла с данными JSON дает null - C#
Всем привет, имеется файл с данными объекта в формате JSON, полученный в результате успешной сериализации, но десериализировать не...

Ошибка при обработке Json - Cannot deserialize the current JSON array because the type requires a JSON object - C#
Всем привет! Помогите, плиз, разобраться с ошибкой: An unhandled exception of type 'Newtonsoft.Json.JsonSerializationException'...

Получение и чтение графической информации - C#
Добрый день. Возник вопрос: возможно ли с помощью средств c# захватить изображение в определенном окне (допустим без фокуса), и из этой...


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

Или воспользуйтесь поиском по форуму:
9
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru