아카이브

직렬화 역직렬화 연습 본문

C#프로그래밍

직렬화 역직렬화 연습

timbercat 2023. 7. 28. 18:10

Program.cs

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace LearnJson
{
    internal class Program
    {
        static void Main(string[] args)
        {
            //new키워드: App클래스의 인스턴스 생성하고 생성자 호출
            new App();
        }
    }
}

App.cs

using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace LearnJson
{
    public class App
    {
        public App() 
        {
            //파일읽기
            var json = File.ReadAllText("./tool_data.json");
            Console.WriteLine(json);
            //역직렬화 하면 ToolData객체들을 요소로 하는 배열 객체가 나온다. 
            JsonConvert.DeserializeObject<ToolData[]>(json);
        }
    }
}

ToolData.cs

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace LearnJson
{
    public class ToolData
    {
        public int id;
        public string name;
        public int damage;
    }
}

FruitData.cs

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace LearnJson
{
    public class FruitData
    {
        public int id;
        public string name;
        public int item_id;
    }
}

'C#프로그래밍' 카테고리의 다른 글

json 연습(몬스터, 영웅, 아이템, 인벤토리 )  (0) 2023.07.28
Action 대리자 연습(HitDamage)  (0) 2023.07.27
Action 대리자 연습  (0) 2023.07.27
Dictionary 인벤토리*  (0) 2023.07.26
Dictionary 연습2  (0) 2023.07.26