유니티/Json
Json + Excel 응용(JsonUtility)
잉ㅇ잉ㅇ
2024. 4. 26. 01:34
원래는 쭉 Json.Convert로 사용할 생각이었지만 아무리 생각해도
지금 상황에서 더 편해보이는 JsonUtility를 사용하지 않을 이유가 없을것같다
그리고 후에 볼 수도 있으니 정리글을 간략하게나마 적어보려 한다
public class test1 : MonoBehaviour
{
class Data
{
public int id;
public string name;
public int count;
}
void Start()
{
Data fruit = new Data() { id = 101, name = "apple", count = 3 };
//Json으로 변환
string jsondata = JsonUtility.ToJson(fruit);
Debug.Log(jsondata);
}
}
우선 이번엔 미리 Json 파일을 준비하지 않고 내가 직접 변수 fruit안에 클래스값을 넣어주었다
가장 먼저 클래스 파일을 Json타입 파일로 변환해주겠다
string jsondata = JsonUtility.ToJson(fruit);
그리고 이게 jsondata 변수에 Json타입으로 변환해준 변수 fruit값을 넣어주는 코드이다
캬 정말 쉽다. 심지어 To/FromJson이라 구분하기도 간편하다
이번엔 FromJson을 이용하여 Json 파일을 원래 클래스 파일로 변환해주겠다
public class test1 : MonoBehaviour
{
class Data
{
public int id;
public string name;
public int count;
}
void Start()
{
Data fruit = new Data() { id = 101, name = "apple", count = 3 };
//Json 타입으로 변환(직렬화)
string jsondata = JsonUtility.ToJson(fruit);
//클래스 타입으로 변환(비직렬화)
Data data = JsonUtility.FromJson<Data>(jsondata);
Debug.Log(data.id);
Debug.Log(data.name);
Debug.Log(data.count);
}
}
Data data = JsonUtility.FromJson<Data>(jsondata);
당연히 클래스타입을 받을 변수이니 Data로 변수 선언을 해준뒤 FromJson으로 받아주는데
ToJson과 다른점이 있다면
1. <꺽쇠괄호>안에 들어갈 데이터 클래스 이름을 넣어준뒤
2. (소괄호)안에 데이터값이 들어간 변수를 넣어준다
정말 너무 보기 쉽고 간편하다. 당분간은 이 방법을 써야겠다