iOS Read a plist as struct

운영 체제: macOS Ventura 13.0.1
사용 버전: Xcode 14.2, Swift, SwiftUI

iOS Read a plist as struct를 알아보겠습니다.


plist를 읽을 때, Struct를 이용해서 읽는 방법을 알아보겠습니다.



아래 글을 참고하여 pList를 만들어주세요.




MyProperty List.plist에 2 개를 더 추가했습니다.






위의 내용을 변환시킬 Struct를 하나 만듭니다.

File - New - File...을 누릅니다.








Swift File을 누릅니다.







적당한 이름으로 만듭니다. 저는 myPlistStruct로 만들었습니다.









생성한 파일에 codable을 상속한 struct를 만듭니다. 그리고 plist에 있는 항목들을 변수로 만들어 줍니다.









보통의 변수들은 소문자로 시작합니다. 그래서 소문자 형식으로 변경해 봅시다.

CodingKeys를 사용합니다.










이제 뷰로 갑니다.


11 번째 줄처럼 방금 만든 struct를 타입으로 하는 변수를 하나 만듭니다.

onAppear에 path를 불러옵니다.

Bundle.main.path(forResource: "MyProperty List", ofType: "plist") else { return }











그다음에 url을 만듭니다.  버전에 따라 URL(filePath:)와 URL(fileURLWithPath:)를 사용합니다.










그 뒤, Data(contentsOf:)를 사용해서 data로 변환합니다.

PropertyListDecoder()를 만들고, data를 MyPlistStruct.self 형식으로 변환합니다.

try? decoder.decode(MyPlistStruct.self, from: data)












그 뒤, plistStruct를 바탕으로 myPlist를 변경합니다.











myPlist를 초기화 시켜주고, body에는 value를 출력해 줍니다.










실행해 봅시다.






끝.



카테고리: iOS

댓글

이 블로그의 인기 게시물

Python urllib.parse.quote()

Python OpenCV 빈 화면 만들기

tensorflow tf.random.uniform()

Android Notification with Full Screen

KiCad 시작하기 2 (PCB 만들기)

Android Minimum touch target size

Python bs4.SoupStrainer()

KiCad 시작하기 4 (기존 회로도 수정 및 추가)

음악 총보(Score), 파트보(Part)

tensorflow tf.expand_dims()