설명
- plist에서 데이터를 받는 것과 JSON 형식으로 데이터를 받는 것은 비슷하다
- 먼저 데이터 구조와 맞게 모델(
struct
)을 만든다, 이때 구조체는 Decodable
을 따른다
- plist의 위치(url)를 찾고
- 찾은 url로 정보를 받아
Data
타입으로 만들고
PropertyListDecoder
로 앞서 구한 data를 만들어둔 모델에 맞춰 decode
해준다
- data로 만들때, decode할때는 오류를 던지므로(
throws
) do-catch문에서 try 해준다
예시
func fetchData() {
guard let url = Bundle.main.url(forResource: , withExtension: "plist") else { return }
do {
let data = try Data(contentsOf: url)
let result = try PropertyListDecoder().decode([].self, from: data)
} catch {
print("ViewController - fetchData - Error 입니다.")
}
}