İçeriğe atla
%100 yerel

JSON to Swift Codable struct

JSON örneğini Codable protokolüne uygun bir Swift yapısına dönüştürün.

Giriş
Çıkış

JSON to Swift Codable struct

Bir JSON örneğini yapıştırdığınızda, bu araç onun şeklini çıkarır ve iOS, macOS veya sunucu tarafı Swift projesine bırakmaya hazır bir Codable protokolüne uygun Swift yapısı oluşturur. İç içe nesneler kendi iç içe yapılarına dönüşür, diziler türü belirtilmiş Swift dizilerine dönüşür ve bazen eksik olan veya null değeri olan bir değer, soru işareti içeren isteğe bağlı bir özellik haline gelir — böylece oluşturulan model API'nin gerçekten gönderdiklerine uyar, sadece şanslı bir örneğe değil.

Seçenekler, oluşturulan kodun şeklini kontrol eder. Bildirim için struct veya class seçin ve özellik değiştirilebilirliği için let veya var seçin. CodingKeys açıldığında, user_name gibi snake_case JSON anahtarlarını Swift'in camelCase kuralına dönüştürür ve eşleşen CodingKeys enum'unu ekler, böylece kod çözme hala orijinal alan adlarına uyumlu kalır; JSON anahtarlarını olduğu gibi tutmak için kapatın. Erişim seviyesi, türün ve özelliklerin public veya internal olup olmadığını belirler; tarih alanları ISO-8601 dizelerini tanır ve bunları String yerine Date olarak yazı; girinti, projeniz stiline 2 boşluk, 4 boşluk veya sekmelerle uyum sağlamanıza izin verir.

Bir örnek dizide ilişkisiz türleri karıştıran bir alan — bazen sayı ve bazen dize olan bir değer — yalnızca gerçekten gerektiğinde çıktıya eklenen küçük bir AnyCodable sarmalayıcısına geri döner, böylece yapı sessizce yanlış tahmin etmek yerine derlenir. Swift tanımlayıcı olarak geçerli olmayan anahtarlar, emoji dahil veya rakamla başlayan anahtarlar otomatik olarak sanitize edilir ve CodingKeys üzerinden geri eşlenir, bu nedenle hiçbir şey kaybolmaz.

Her şey tarayıcınızda yazarken yerel olarak çalışır — JSON örneğiniz hiçbir zaman sunucuya yüklenmez veya gönderilmez, bu, örnek gerçek bir API yanıtından geldiğinde önemlidir. Oluşturulan Swift'i kopyalayın, .txt dosyası olarak indirin veya girişe geri gönderin ve daha fazla iyileştirin.

FAQ

İç içe JSON nesneleri nasıl işlenir?
Her iç içe nesne, altında göründüğü anahtar adıyla adlandırılan kendi Swift yapısı haline gelir ve ana yapıdan türe göre referans alınır.
Bazen null veya eksik olan bir alan ne olur?
Sondaki soru işaretiyle isteğe bağlı bir özellik olarak oluşturulur, bu nedenle kod çözme hiçbir zaman bunu atlayan gerçek bir yanıtta kilitlenmez.
CodingKeys seçeneği aslında ne yapar?
Açık olduğunda, created_at gibi snake_case bir JSON anahtarı createdAt özelliğine dönüşür ve bir CodingKeys enum'u kod çözme için geri eşler. Kapatıldığında, özellik adı JSON anahtarına Swift'in tanımlayıcı kurallarının izin verdiği kadar yakın kalır.
Struct yerine class oluşturabilir mi?
Evet. Bildirim seçeneği, aynı Codable uyumluluğunu korurken her oluşturulan türü struct ve class arasında değiştirir.
JSON'm herhangi bir yere yükleniyor mu?
Hayır. Yapı tamamen tarayıcınızda oluşturulur — JSON örneğiniz hiçbir zaman cihazınızı terk etmez.