경일게임아카데미 멀티 디바이스 메타버스 플랫폼 개발자 양성과정 특강 20220817 2022/04/04~2022/12/14

Jinho Lee·2022년 8월 17일
0

2022.08.17 경일 메타버스 20주차 2일 특강 수업내용. 유니티 - Resources, CSV 파싱

Resources

  • Resources라는 특수 폴더

    • 정확히 같은 이름으로 폴더를 만드는 것으로 생성할 수 있다.
  • 경로를 통해 에셋을 로드할 수 있다.

    • Resources.Load<형식>(”파일이름”)

      • Resources 폴더에 있는 파일의 이름을 적는 것으로 로드 가능

      • 형식 예 : TextAsset

    • 자세히는 메뉴얼 참고

  • 최적화 이슈가 일어날 수 있다 → Addressable 시스템으로 대체되었다 ⇒ 후에 다룰 기능

CSV 파싱

  • CSV 파서를 직접 만드는 건 어렵고 귀찮으며 고려할 부분이 많다
    ⇒ 오류가 많다
    ⇒ 외부 라이브러리 활용

  • C# .NET에서 외부 라이브러리 활용

    • 도구 → NuGet 패키지 관리자 → 솔루션용 NuGet 패키지 관리 → 여러 사람이 사용하는 패키지 다운로드 (자료가 많기 때문)
  • 이번에는 CsvHelper 사용

    • 설치 → 유니티 인식 불가 → 가장 상위 폴더로 → Packages → CsvHelper 폴더 → lib → 현재 유니티 .NET 버전 폴더
      (에디터 Build Settings → Player Settings → Player → Other Settings → Configuration → Api Compatibility Level에서 확인 가능) → .dll 파일 복사 → Resources 폴더에 붙여넣기 → 인터넷에서 “C# CsvHelper” 검색 → Get Started로 사용법 익히기

    • 코드
      네임스페이스 CsvHelper 추가
      CsvReader 형식의 인스턴스 생성
      ← 필요 매개변수 : TextReader(StringReader), Configuration(언어권 설정){구분자 = “”, 개행문자 = “”};

    • 주의 : 파일 핸들은 C#에서 관리 되지 않는다.
      ⇒ 수동으로 관리 ⇒ 열었으면 닫아주어야 한다.
      ⇒ 그런 객체들은 IDisposable 인터페이스를 상속 받는다.
      ⇒ void Dispose();

    • 자동으로 Dispose() 호출
      ⇒ using 구문

      • using (IDisposable을 구현하고 있는 객체){ / ~ / }
        ⇒ 코드 블록이 끝나면 자동으로 객체의 Dispose() 호출

      2022. 08. 17 Csv 파싱 예시 코드

0개의 댓글