Back
Syntax
Study
Editor
Mode:
HTML
CSS
JavaScript
PHP
Reset
Run »
HTML / CSS / JS
import Foundation // Codable with custom keys struct User: Codable, Equatable, CustomStringConvertible { let id: Int let username: String let email: String let createdAt: Date var description: String { "User(\(id): \(username))" } enum CodingKeys: String, CodingKey { case id case username case email case createdAt = "created_at" } } // Encoding to JSON let user = User(id: 1, username: "alice", email: "alice@example.com", createdAt: Date()) let encoder = JSONEncoder() encoder.dateEncodingStrategy = .iso8601 encoder.outputFormatting = .prettyPrinted if let data = try? encoder.encode(user), let json = String(data: data, encoding: .utf8) { print(json) } // Decoding from JSON let jsonString = """ {"id": 2, "username": "bob", "email": "bob@example.com", "created_at": "2024-01-15T10:30:00Z"} """ let decoder = JSONDecoder() decoder.dateDecodingStrategy = .iso8601 if let data = jsonString.data(using: .utf8), let decoded = try? decoder.decode(User.self, from: data) { print(decoded) }
Result
Open