오늘의 학습 키워드

Excel에서 데이터 읽어오기

 

공부한 내용

Excel에서 데이터 읽어오기

엑셀에서 첫 줄에 key 값을 적고 그 아래로 value들을 적는다.

저장할 때 Sheet 파일 이름이 중요한데 이 이름이 스크립터블 오브젝트의 리스트의 변수명이 됩니다.

Serialize된 클래스의 변수명은 위의 key 이름과 동일해야한다.

using System;

[Serializable]
public class LunchDialogEntity
{
    public int branch;
    public string name;
    public string dialog;
}

스크립터블 오브젝트에 [ExcelAsset] 속성을 부여하고 ScriptableObject의 리스트 변수명엑셀 시트의 이름과 동일하게 리스트를 선언해준다. * 만약 ExcelAsset에서 namespace 오류가 뜬다면 아래의 코드를 Packages/manifest.json 안의 "dependency"의 괄호 안의 부분에 넣어준다.

"net.mikinya.unity-excel-importer": "https://github.com/mikito/unity-excel-importer.git?path=Assets/ExcelImporter#v0.1.1/upm",
using System.Collections;
using System.Collections.Generic;
using UnityEngine;

[ExcelAsset]
public class LunchDialog : ScriptableObject
{
    // 변수명과 엑셀 시트의 이름이 동일해야 함
    public List<LunchDialogEntity> Entities;
}

이후에 엑셀 파일을 Reimport 하게되면 

스크립터블 오브젝트 파일이 하나 생기게 된다.

이 데이터에 접근하여 text를 불러올 수 있다.

 

 

오늘의 회고

 오늘은 Excel 파일을 유니티에서 읽어오는 방법을 배웠다. 과정이 귀찮지만 데이터 테이블을 엑셀로 관리해서 불러오는 것은 유용할 것 같다. 맨날 json에 데이터를 적고 불러오는 방식을 사용했는데 다음부턴 엑셀로 불러오도록 해야겠다.

 내일부터는 개인 과제 개발에 들어가는데 기획한대로 잘 구현했으면 좋겠다. 내일도 파이팅!

 

+ Recent posts