유니티로 Json 사용하기
2020. 9. 1. 14:31ㆍ개발/유니티
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
|
using System;
using UnityEngine;
public static class JsonData
{
[Serializable]
public class Data<T> {
public T[] array;
public T value;
}
public static T[] FromJsonArray<T>(string json)
{
Data<T> data = JsonUtility.FromJson<Data<T>>(json);
return data.array;
}
public static T FromJson<T>(string json)
{
Data<T> data = JsonUtility.FromJson<Data<T>>(json);
return data.value;
}
public static string ToJson<T>(T[] array)
{
Data<T> Data = new Data<T>();
data.array = array;
return JsonUtility.ToJson(data);
}
public static string ToJson<T>(T[] array, prettyPrint)
{
Data<T> Data = new Data<T>();
data.array = array;
return JsonUtility.ToJson(data, prettyPrint);
}
public static string ToJson<T>(T[] array, bool
}
|
cs |
|
|
|
|
|
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
|
using UnityEngine;
public class Product
{
string name;
string date;
int price;
}
public class UsingJson { void UsingArrayFunction(json)
{
var data = JsonData.FromJsonArray<Product>(json);
foreach(var products in data)
{
Debug.Log(Products.name);
Debug.Log(Products.date);
Debug.Log(Products.price.ToString());
}
}
void UsingFunction(json)
{
var data = JsonData.FromJsonArray<Product>(json);
Debug.Log(data.name);
Debug.Log(data.date);
Debug.Log(data.price.ToString());
}
}
|
cs |
입력값
1
2
3
4
5
6
7
8
9
10
11
12
|
{ "array":[
{
"name":"apple",
"date":"2020-09-01",
"price":500
},
{
"name":"note",
"date":"2020-08-11",
"price":2000
}
]}
|
cs |
출력값
1
2
3
4
5
6
|
apple
2020-09-01
500
note
2020-08-11
2000
|
cs |
ToJson은 역으로 계산되는거라고 보면 됨.
'개발 > 유니티' 카테고리의 다른 글
유니티로 안드로이드 갤러리 호출 (3) | 2021.04.13 |
---|---|
유니티 안드로이드에 so 플러그인 연결하기 (0) | 2021.04.01 |
이미지 크기를 일정하게 늘리기 (0) | 2020.08.04 |
유니티에 DLL 파일 연결하기 (0) | 2020.07.29 |
안드로이드 유니티에서 다른 애플리케이션 실행하기 (0) | 2019.09.23 |