JSON vers classe Dart
Convertissez un exemple JSON en une classe Dart avec fromJson, toJson et modèles imbriqués.
JSON vers classe Dart
Collez un exemple JSON et cet outil déduit la structure des données et génère une classe Dart correspondante, du type que vous écririez autrement à la main pour un modèle Flutter. Les objets imbriqués deviennent leurs propres classes, les tableaux deviennent des champs `List<...>` typés, et chaque classe est fournie avec un constructeur nommé, une fabrique `fromJson` et une méthode `toJson`, afin que le résultat s'intègre directement dans un projet Flutter ou Dart.
Les options contrôlent le style du code généré. "Nom de la classe" définit la classe racine; les classes imbriquées prennent le nom de leur clé JSON. "Sécurité null avec champs obligatoires" marque les champs présents dans chaque exemple comme `required` avec un type non-nullable, et les champs parfois absents ou null comme nullable et optionnels; désactivez-le pour rendre tous les champs nullable à la place. "Annotations json_serializable" remplace les corps `fromJson`/`toJson` écrits à la main par `@JsonSerializable()` et `@JsonKey`, qui délèguent à un fichier `.g.dart` généré. "Champs finaux" rend la classe immuable; "Générer copyWith" ajoute une méthode pour créer une copie modifiée sans muter l'original, et "Générer == et hashCode" ajoute l'égalité des valeurs pour que deux instances ayant les mêmes valeurs de champs soient égales. "Indentation" bascule entre 2 et 4 espaces.
Quand la même forme d'objet se répète (un tableau d'éléments ayant tous les mêmes champs, par exemple), l'outil réutilise une classe au lieu de générer un doublon pour chaque occurrence, et un champ absent de certaines entrées d'un tableau est correctement déduit comme optionnel plutôt que obligatoire. Les clés JSON qui ne sont pas des identifiants Dart valides, qui utilisent des casses différentes ou qui entrent en collision avec un mot clé ou un nom de méthode généré (comme `copyWith` ou `hashCode`) sont automatiquement renommées du côté Dart tandis que la clé d'origine est conservée pour l'encodage et le décodage.
Tout s'exécute localement dans votre navigateur: aucun exemple JSON n'est jamais téléchargé nulle part, ce qui est important s'il contient des données utilisateur réelles ou la forme de réponse d'une API interne. Copiez la classe, téléchargez-la en tant que fichier .txt ou renvoyez la sortie à l'entrée pour convertir un autre morceau imbriqué.