Как многие из вас уже знают, Gson — отличная библиотека Java, которую можно использовать для преобразования объектов Java в их представление JSON . Работает также в обратном порядке десериализации указанного JSONObject или же JSONArray в объект указанного класса.
Как преобразовать объект Java в / из JSON (Gson)?
В основном — этот же учебник поможет вам, если вы хотите преобразовать gson из json в карту, gson из json в список, json из json в массив, json string в arraylist в java.
В этом уроке мы рассмотрим следующие шаги:
- Чтение содержимого файла из файла на Java
- Мы будем использовать операцию разделения регулярных выражений, чтобы обойти любой пробел между словами
- Создать JSONObject из каждой строки
- Добавить каждый
JSONObject to JSONArray - Распечатать JSONArray
- Теперь с помощью Gson's
fromJson()Метод, который мы будем десериализовать JSONArray в ArrayList
Чтобы запустить код ниже, вам нужна зависимость ниже Maven .
|
1
2
3
4
5
|
< зависимость >
< groupId > ком . Google. код. gson < / groupId >
< artifactId > gson < / artifactId >
< версия > 2.8.0 < / версия >
< / зависимость >
|
Кроме того, вот файл, который мы используем в следующей программе: https://crunchify.com/wp-content/uploads/code/crunchify-gson.txt
Пожалуйста, загрузите и поместите его под C: drive or Documents folder и обновите путь ниже.
Java-код:
|
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
|
пакет crunchify. ком . учебные пособия ;
Импортировать Java. Ио. BufferedReader ;
Импортировать Java. Ио. FileReader ;
Импортировать Java. Util. ArrayList ;
Импортировать орг. JSON . JSONArray ;
Импортировать орг. JSON . JSONObject ;
Импортировать ком . Google. gson. Гсон ;
/ **
* @author Crunchify.com
* Gson () -> fromJson () для десериализации указанного Json в объект указанного класса
* /
общественности учебный класс CrunchifyGoogleGSONExample {
общественности статический недействительным main ( Строка [ ] аргументы ) {
Массив JSONArray знак равно readFileContent ( ) ;
convertJSONArraytoArrayList ( array ) ;
}
частный статический недействительным convertJSONArraytoArrayList ( массив JSONArray ) {
// Используем метод fromJson () для десериализации указанного Json в объект
// указанного класса
окончательный ArrayList < ? > jsonArray знак равно новый Гсон ( ) . fromJson ( array . toString ( ) , ArrayList . класс ) ;
log ( / nArrayList: + jsonArray ) ;
}
частный статический JSONArray readFileContent ( ) {
JSONArray crunchifyArray знак равно новый JSONArray ( ) ;
строка lineFromFile ;
пытаться ( BufferedReader bufferReader знак равно новый BufferedReader ( новый FileReader ( /Users/appshah/Documents/crunchify-gson.txt ) ) ) {
в то время как ( ( lineFromFile знак равно bufferReader . readLine ( ) ) ! знак равно ноль ) {
если ( lineFromFile ! знак равно ноль &&! lineFromFile.isEmpty ()) {
JSONObject crunchifyObject = new JSONObject ();
log ( Строка: ==> + lineFromFile ) ;
// экранируем пробел между токенами
Строка [ ] Трещина знак равно lineFromFile . split ( // s + ) ;
crunchifyObject . положить ( companyName , split [ 0 ] ) ;
crunchifyObject . поставить ( «адрес» , сплит [ 1 ] ) ;
crunchifyObject . положить ( «описание» , сплит [ 2 ] ) ;
crunchifyArray . положить ( crunchifyObject ) ;
}
}
} ловить ( Исключение е ) {
эл . printStackTrace ( ) ;
}
Система. вне. println ( / nJSONArray: + crunchifyArray . toString ( ) ) ;
вернуть crunchifyArray ;
}
частный статический недействительным log ( Объект строка ) {
Система. вне. println ( строка ) ;
}
}
|
Выход:
|
1
2
3
4
5
6
7
8
|
Линия : ==> Crunchify. com NewYork Java & Blogging
Линия : == > Google . com MountainView SearchEngine
Линия : == > Facebook . com SanJose SocialMedia
Линия : == > Твиттер . com SanFrancisco TweetTweet
JSONArray : [ { address : NewYork , companyName : Crunchify.com , description : Java & Blogging } , { address : MountainView , companyName : Google.com , description : SearchEngine } , { address : SanJose , companyName : Facebook.com , description : SocialMedia } , { address : SanFrancisco , companyName : Twitter .com , description : TweetTweet } ]
ArrayList : [ { address = NewYork , COMPANYNAME = Crunchify. ком , описание = Java & Blogging } , { address = MountainView , companyName = Google . ком , description = SearchEngine } , { адрес = Сан-Хосе , companyName = Facebook . ком , description = SocialMedia } , { адрес = Сан-Франциско , companyName = Twitter . ком , description = TweetTweet } ]
|
Вот цель Google Gson из официального репозитория Github:
0.00 (0%) 0 votes









