(25/07/09)NewtonSoft.Json을 사용한 JsonConvert

허윤·2025년 7월 9일
post-thumbnail


Visual Studio 상의 프로젝트 우클릭하여 Nuget패키지 관리, newtonSOft.json을 검색하여 설치

해당 스크립트는 내가 학부생시절 JsonConverting을 위해 사용하였었다.

Save관련

  • JsonConvert.SerializeObject = 오브젝트를 직렬화 해준다.

  • "./" = 빌드된 프로젝트의 디렉토리(빌드 없이 debug실행 시 \bin\Debug\net8.0경로)

  • Path.Exist(string) = 주소 존재 여부에 대한 bool값을 리턴하는 함수

  • Dirrectory.CreateDirrectory(string) = 인자로 받은 주소의 경로를 생성하는 함수

  • File.WriteAllText(주소string,내용 string) 주소에 Text파일을 생성,

  • 내용 string값을 써준다(파일 이름은 마지막 \이후 문자를 기준으로 생성)

Load관련

  • GetFiles(스트링1,스트링2, searchOption) 조건에 해당하는 모든 파일의 주소를 string[]리턴

    • 스트링 1번= 주소
    • 스토링 2번 = 해당 string이 포함 된 파일을 대상으로 수집해라
    • 서치옵션
      • TopDirectoryOnly = 최상단의 디렉토리에서만 검색(위 예제의 호출이라면 saves폴더에서만 검색)
      • AllDirrectories = 하위 디렉토리에서도 모두 검색(위 예제에 saves파일 하위 폴더가 있다면 모든 하위폴더도 검색)
        업로드중..
  • JsonConvert.DeserializeObject<T>(string)객체를 T 타입으로 역직렬화 하는 과정, 일명 파싱

    • 인수1번 json 데이터가 담긴 string을 <T>타입으로 변환
    • File.ReadAllText(string) path위치의 파일을 string으로 읽어온다
    1. 오늘 학습 키워드
    • 파일 저장 작업
    1. 오늘 학습 한 내용을 나만의 언어로 정리하기
    • newtonsoft.json 라이브러리 복습,Dirrectory,file 클래스 함수 정리
    1. 학습하며 겪었던 문제점 & 에러
    • 문제에 대한 정의
      • 데이터를 export하여 특정 dirrectory에 저장해야했다.
    • 내가 한 시도와 해결 방법
      • 데이터를 읽고 쓰는데엔 학부때 배웠던 newtonSoft.json 라이브러리가 딱 떠올라 쉽게 해결 할 수 있엇다.
        파일생성은 이전 서버공부때 Packetgenerator 작성하던 요령을 떠올려 File클래스까진 떠올릴 수 있었다.
        다만 Dirrectory는 딱 생각나지 않아 검색의 힘을 빌렸다
    • 새롭게 알게 된 점
      • Dirrectory.GetFiles(스트링1,스트링2, searchOption) 함수는 규격에 맞는 파일들의 "주소!"들을 리턴한다는점
    • 이 문제&에러를 다시 만나게 되었다면?
      • 일단 오늘 했던 것 처럼 File과 newtonsoft를 사용한 Json 파싱까진 떠올릴 것 같다.
        다만 Dirrectory는 자주 사용하는 클래스는 아니기에 오늘 기록하여 3일뒤에 한번 보고 장기기억으로 남을 수 있도록 노력해야겠다.
    1. 내일 학습 할 것은 무엇인지
    • 이번주차의 과제를 끝냈으니 내일하고 모레는 이제 개인적으로 진행하는 팀플을 진행하며 공부 할 것 같다.
profile
C# 클라이언트 프로그래밍 지망

0개의 댓글