Generador de JSON a Swift

Entrada JSON

Cargando editor…

Swift Generado

Configuration

Ingresa datos JSON para generar structs Swift

Structs con soporte Codable y seguridad de tipos

Cómo convertir JSON a Swift – guía paso a paso

Utilice este generador de JSON a Swift para crear estructuras Swift codificables a partir de muestras JSON para aplicaciones iOS/macOS y servicios Swift.

  1. Paso 1: pega una muestra JSON

    • Pegue un objeto o matriz JSON representativa en el editor de la izquierda.
    • Incluye objetos anidados, matrices y campos que aceptan valores NULL para que los tipos se infieran correctamente.
    • Utilice Import para cargar JSON desde un archivo, URL o datos de muestra.
  2. Paso 2: elige las opciones de estructura Swift

    • Establezca una raíz Struct Name (por ejemplo Root).
    • Revise cómo se asignan los campos opcionales a String? y tipos similares.
    • Confirme la estrategia de asignación de claves cuando las claves JSON no coincidan con las convenciones de nomenclatura de Swift.
  3. Paso 3: revisar el código generado

    • Verifique los nombres de los campos, los tipos y cómo se modelan las matrices/objetos.
    • Ajuste opciones como Root Type Name, manejo de nulos y marcos si están disponibles.
    • Si un campo se infiere incorrectamente, modifique su JSON de muestra y vuelva a generarlo.
  4. Paso 4: usa las estructuras con Codable

    • Agregue las estructuras generadas a su proyecto y asegúrese de que cumplan con Codable.
    • Decodifica JSON usando JSONDecoder en el tipo raíz.
    • Agregue CodingKeys personalizados o estrategias de decodificación de fechas según sea necesario.
  5. Paso 5: copiar o descargar

    • Copie el resultado en su proyecto o descárguelo como un archivo.
    • Ejecute su formateador/linter para que coincida con su estilo de código.
    • Agregue bibliotecas de análisis/serialización JSON si su idioma las requiere.

Consejos rápidos

  • Prefiera ISO8601DateFormatter/JSONDecoder.dateDecodingStrategy para las marcas de tiempo.
  • Utilice CodingKeys para la conversión de Snake_case a camelCase cuando sea necesario.
  • Mantenga las estructuras DTO separadas de los modelos de UI para evitar la conexión.
Salida de ejemplo (simplificada)
// entrada JSON
{
  "id": 123,
  "name": "Maeve Winters",
  "email": "[email protected]",
  "active": true,
  "roles": ["admin", "editor"],
  "metadata": { "plan": "pro" },
  "createdAt": "2024-03-01T10:15:00Z",
  "score": 99.5,
  "notes": null
}

// Generated Swift models (simplified)
struct Metadata: Codable {
  let plan: String
}

struct Root: Codable {
  let id: Int
  let name: String
  let email: String?
  let active: Bool
  let roles: [String]
  let metadata: Metadata
  let createdAt: String
  let score: Double
  let notes: String?
}

Herramientas JSON y Swift relacionadas

Explore más herramientas de esquema y JSON que funcionan muy bien junto con este generador de JSON a Swift.

Preguntas frecuentes

¿Qué características de Swift se admiten?

El generador crea structs Swift con buena seguridad de tipos, admite el protocolo Codable para serialización/deserialización JSON, usa tipos opcionales para valores null y sigue convenciones de nombres Swift.

¿Cómo funciona el protocolo Codable?

Cuando se selecciona Codable, los structs generados conforman automáticamente al protocolo Codable, permitiendo encoding/decoding con JSONEncoder y JSONDecoder.

¿Cómo se manejan valores opcionales?

Los valores null en JSON se mapean a tipos opcionales (?) en Swift, proporcionando seguridad de tipos y requiriendo unwrap explícito, siguiendo el enfoque de Swift.

¿Qué hay del sistema de tipos de Swift?

El código generado aprovecha el sistema de tipos fuerte de Swift con tipos apropiados (Int, Double, String, Bool, [Any], [String: Any]) y semántica de valor usando structs para modelos inmutables.

Generador de JSON a Swift | JSONSwiss