반응형
Notice
Recent Posts
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
Tags
- git
- mosquitto
- NoSuchMethodError
- firebase-database
- Firebase
- BottomSheetDialog
- OZViewer
- google-login
- ActivityResult-API
- Java8
- firebase-storage
- Flavors
- socket-client
- Galaxy Watch
- socket-server
- socket.io
- cloud-firestore
- git-push
- Dva
- AWS
- hung-up
- Kotlin
- mqtt
- 오즈뷰어
- 워치
- TIZEN
- gradle
- JNI
- Android
- ozd
Archives
- Today
- Total
Hyeyeon blog
[Android] Json 과 Array, Map 간의 변환 방법 본문
반응형
1. JsonArray String -> 2차 배열 변환
val json: String = "[[0, 0, 0, 0], [1, 1, 1, 1], [2, 2, 2, 2], [3, 3, 3, 3]]"
val jsonArray: JsonArray = JsonParser().parse(json) as JsonArray
for (arr1 in jsonArray) {
for (arr2 in arr1.asJsonArray) {
print(arr2)
}
println()
}
0000
1111
2222
3333
2. JsonArray String -> 3차 배열 변환
val json: String = "[[[0, 0, 0, 0], [0, 0, 0, 0] ], [[1, 1, 1, 1], [1, 1, 1, 1]]]"
val jsonArray: JsonArray = JsonParser().parse(json) as JsonArray
for (arr1 in jsonArray) {
for (arr2 in arr1.asJsonArray) {
for (arr3 in arr2.asJsonArray) {
print(arr3)
}
println()
}
}
0000
0000
1111
1111
3. 2차 배열 -> JsonArray 변환
val arrary = arrayOf(arrayOf(0, 0, 0, 0), arrayOf(1, 1, 1, 1), arrayOf(2, 2, 2, 2), arrayOf(3, 3, 3, 3))
val result = JsonArray()
for (data1 in array) {
val jsonArray = JsonArray()
for (data2 in data1) {
jsonArray.add(data2)
}
result.add(jsonArray1)
}
println(result)
[[0,0,0,0],[1,1,1,1],[2,2,2,2],[3,3,3,3]]
4. 3차 배열 -> JsonArray 변환
val array = arrayOf(arrayOf(arrayOf(0, 0, 0, 0), arrayOf(0, 0, 0, 0)), arrayOf(arrayOf(1, 1, 1, 1), arrayOf(1, 1, 1, 1)))
val result = JsonArray()
for (data1 in array) {
val jsonArray1 = JsonArray()
for (data2 in data1) {
val jsonArray2 = JsonArray()
for (data3 in data2) {
jsonArray2.add(data3)
}
jsonArray1.add(jsonArray2)
}
result.add(jsonArray1)
}
println(result)
5. JsonObject String -> Map 변환
val mapJson = "{ A: a, B: b, C: c}"
val jsonObject: JsonObject = JsonParser().parse(mapJson).asJsonObject
val resultMap = Gson().fromJson<HashMap<String, String>>(jsonObject.toString(), HashMap::class.java)
6. Map -> JsonObject 변환
val jsonObject = JsonObject()
for(key in resultMap.keys){
jsonObject.addProperty(key, resultMap[key])
}
728x90
'개발 > Android' 카테고리의 다른 글
[Android] Mediarecorder.prepare() 시 FileNotFoundException 발생하는 경우 (0) | 2020.10.21 |
---|---|
[Android] CheckBox, RadioButton에 Custom Image 적용 (0) | 2020.10.14 |
[Android] dp <-> px 변환 (0) | 2019.11.05 |
[Android] Horizontal ProgressBar 색상 변경 (0) | 2019.11.04 |
[Android] TabLayout과 ViewPager 연결하기 (0) | 2019.10.30 |
Comments