[Swift] Doctuments 내의 JSON 파일 읽기와 쓰기
개시하다
다음은 Doctements/디렉토리 내의 JSON 파일의 읽기, 쓰기에 대한 Swift 설명입니다.
컨디션
[사전 준비] JSON 데이터를 저장할 구조체 정의
struct Bookdata: Codable {
var id: Int //本のID
var title: String //本のタイトル
var author: String //本の著者
var publisher: String //本の出版社
var comment: String //本のコメント
}
JSON 파일 읽기
guard let dirURL = FileManager.default.urls(for: .documentDirectory, in: .userDomainMask).first else {
fatalError("フォルダURL取得エラー")
}
if !FileManager.default.fileExists(atPath: NSHomeDirectory() + "/Documents/" + "bookdata.json"){
fatalError("JSONが存在しない")
}
let fileURL = dirURL.appendingPathComponent("bookdata.json")
guard let data = try? Data(contentsOf: fileURL) else {
fatalError("JSON読み込みエラー")
}
let decoder = JSONDecoder()
guard let bookdata = try? decoder.decode([Bookdata].self, from: data) else {
fatalError("JSONデコードエラー")
}
//bookdata[0].titleなどでとり出すことが可能
JSON 파일 쓰기
guard let dirURL = FileManager.default.urls(for: .documentDirectory, in: .userDomainMask).first else {
fatalError("フォルダURL取得エラー")
}
let fileURL = dirURL.appendingPathComponent("bookdata.json")
let encoder = JSONEncoder()
encoder.outputFormatting = .prettyPrinted //JSONデータを整形する
guard let jsonValue = try? encoder.encode(bookdata) else {
fatalError("JSONエンコードエラー")
}
do {
try jsonValue.write(to: fileURL)
} catch {
fatalError("JSON書き込みエラー")
}
Reference
이 문제에 관하여([Swift] Doctuments 내의 JSON 파일 읽기와 쓰기), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://zenn.dev/aba097/articles/5de1384dd2623e텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)