-
[iOS] JSONEncoder, FileManager를 이용해 Json 파일 저장하기공부기록/iOS 2021. 4. 20. 23:00

Codable 프로토콜을 채택한 Note 구조체 JSONEncoder을 사용하기 위해서는 Codable 프로토콜을 채택한 구조체가 필요하다.
JSONEncoder 구조체를 알아서 JSON형태로 변환해준다 ㄷㄷ
위는 먼저 Codable 프로토콜을 채택한 Note 구조체인 firstNote를 만들고 그 안에 데이터를 채워넣은 스크린샷이다.

JSONEncoder를 만들고 firstNote를 encode JSONEncoder는 정말 쉽게 만든다.
outputFormatting을 prettyPrinted로 하면 읽기 쉬운 형태로 변환해준다고 한다.
encode를 통해 data를 만들었다. 자료형은 Data이다.
오류를 던지기 때문에 do-catch와 try를 사용해야한다.

파일매니저를 이용한 데이터 저장 directory 상수에 파일매니저를 이용해 저장될 폴더의 기본 주소를 얻는다.
기본 경로에 저장할 파일명을 더해준다. 이 경로에 write를 이용해서 저장한다.
write도 오류를 던지기 때문에 try를 사용한다. do-catch는 encode할때 있는거 그대로 사용했다.
directory 상수를 print()를 이용해 출력해보면 경로를 얻을 수 있다.
터미널을 열어 open 경로 를 해주면 아래와 같이 폴더가 열린다.


저장된 JSON 파일 저장된 폴더로 가서 저장한 test 파일을 열어 확인한다.
prettyPrinted라 그런지 프리티하게 저장됐다.
순서는 2, 0, 1번 순으로 안프리티하게 저장됐다.
'공부기록 > iOS' 카테고리의 다른 글
[iOS] Firebase로 REST API 공부하기(+ Postman, Alamofire) - 3. PATCH (0) 2021.09.01 [iOS] Firebase로 REST API 공부하기(+ Postman, Alamofire) - 2. POST (0) 2021.09.01 [iOS] Firebase로 REST API 공부하기(+ Postman, Alamofire) - 1. GET (0) 2021.09.01 [iOS] 테이블뷰의 contentOffset (0) 2021.05.25 [iOS] 파일명으로 JSONDecoder 사용하기 (0) 2021.04.25