JSON 개체에서 데이터 유형의 인스턴스를 디코딩하는 객체
class JSONDecoder
아래 예시에서는 JSON 객체에서 단순 GroceryProduct 타입의 인스턴스를 디코딩하는 방법을 보여 줍니다. 이 유형은 Codable을 채택하여 JSONDecoder 인스턴스를 사용하여 디코딩할 수 있습니다.
struct GroceryProduct: Codable {
var name: String
var points: Int
var description: String?
}
let json = """
{
"name": "Durian",
"points": 600,
"description": "A fruit with a distinctive scent."
}
""".data(using: .utf8)!
let decoder = JSONDecoder()
let product = try decoder.decode(GroceryProduct.self, from: json)
print(product.name) // Prints "Durian"
init()func decode<T>(T.Type, from: Data) -> Tvar keyDecodingStrategy: JSONDecoder.KeyDecodingStrategy
타입의 코딩 키를 JSON 키로 디코딩하는 방법을 결정하는 값.
enum JSONDecoder.KeyDecodingStrategy
타입의 코딩 키를 JSON 키로 디코딩하는 방법을 결정하는 값.
var userInfo: [CodingUserInfoKey : Any]
상황에 맞는 정보를 제공하여 디코딩 프로세스를 커스터마이징 하는 데 사용하는 딕셔너리입니다.
var dateDecodingStrategy: JSONDecoder.DateDecodingStrategyenum JSONDecoder.DateDecodingStrategyvar dataDecodingStrategy: JSONDecoder.DataDecodingStrategyenum JSONDecoder.DataDecodingStrategyvar nonConformingFloatDecodingStrategy: JSONDecoder.NonConformingFloatDecodingStrategyenum JSONDecoder.NonConformingFloatDecodingStrategytypealias JSONDecoder.Inputvar allowsJSON5: Boolvar assumesTopLevelDictionary: Bool{ } Using JSON with Custom Typesclass JSONEncoderclass JSONSerialization