Touchez un fichier .json sur un iPhone et vous obtenez l'une de ces deux choses : un mur de texte sans saut de ligne, ou rien du tout. iOS sait qu'un fichier JSON est du texte. Il ignore que c'est du texte structuré : il vous montre les octets et vous laisse vous débrouiller avec les accolades.
C'est suffisant pour un fichier de configuration de dix lignes, et inutile pour une réponse d'API. Voici les façons de lire vraiment un fichier JSON sur iPhone et iPad, de la solution gratuite et intégrée à un vrai éditeur.
La réponse rapide
- Petit fichier, un simple coup d'œil : l'aperçu de l'app Fichiers. Gratuit, intégré, sans mise en forme.
- Il faut que ce soit lisible : une app d'éditeur de code qui indente le texte (pretty-print), ou une app JSON avec une arborescence repliable.
- Il faut modifier et réenregistrer : un éditeur JSON qui valide pendant la saisie, pour ne pas enregistrer un fichier qui ne se lit plus.
- Ne collez pas de jeton, de clé ou de données clients dans un site de « formateur JSON » au hasard.
D'abord, mettre le fichier sur le téléphone
La plupart des fichiers JSON arrivent sur un téléphone de trois façons, et chacune les dépose à un endroit différent :
- Pièce jointe d'un e-mail : touchez-la, puis le bouton de partage, puis Enregistrer dans Fichiers. Tant que vous ne le faites pas, elle reste dans Mail et la plupart des apps ne la voient pas.
- AirDrop depuis un Mac : elle arrive dans Téléchargements, dans Fichiers, ou directement dans une app si vous en choisissez une dans la fenêtre AirDrop.
- Une URL : un point d'accès d'API ouvert dans Safari s'affiche en texte brut. Faites un appui long pour enregistrer la page ou, plus simple, utilisez une app qui sait récupérer directement une URL.
Voie 1 : l'aperçu de l'app Fichiers
Ouvrez Fichiers, trouvez le fichier, touchez-le. Coup d'œil (Quick Look) l'affiche en texte brut.
Où ça casse : presque tout de suite, avec du JSON réel. La plupart des réponses d'API et des fichiers exportés sont minifiés : tout le document tient sur une seule ligne, donc Quick Look le replie en un paragraphe dense sans indentation. Il n'y a pas de recherche digne de ce nom dans l'aperçu, pas de repli, et aucune modification possible.
Il répond à « est-ce bien le fichier que je crois ? » et à rien d'autre.
Voie 2 : un éditeur de code
Un éditeur de code généraliste traite le JSON comme un langage parmi d'autres : coloration syntaxique, numéros de ligne et, en général, une commande de mise en forme (« pretty print ») qui transforme la longue ligne unique en document indenté.
Runestone est un bon éditeur gratuit sur iOS ; Textastic est l'option payante historique. Les deux ouvrent les fichiers directement depuis Fichiers.
Où ça casse : un éditeur de code affiche le JSON comme du texte. Sur un écran de téléphone, un document indenté de 2 000 lignes, c'est beaucoup de défilement pour trouver une valeur enfouie huit niveaux plus bas. Vous n'avez aucune aide non plus quand vous cassez la syntaxe : une virgule manquante ressemble à n'importe quel autre caractère, jusqu'à ce que quelque chose en aval refuse le fichier.
Voie 3 : une app JSON
Une app dédiée change tout parce qu'elle comprend la structure : elle peut afficher le document sous forme d'arbre de clés que l'on déplie et replie, vous dire exactement où il est invalide, et vous laisser chercher dans les clés et les valeurs plutôt que dans le texte.


Sur iPhone et iPad, Smart Json ouvre un document de trois façons à la fois : le texte, un arbre et un graphe, tous modifiables. Il ouvre les fichiers depuis Fichiers et iCloud Drive, accepte du JSON depuis la feuille de partage de n'importe quelle app, et peut créer un document à partir du presse-papiers ou le récupérer depuis une URL, avec vos propres en-têtes de requête si l'API en demande.
Ouvre un fichier JSON en texte coloré, en arbre où l'on peut chercher et en graphe tactile, signale le JSON invalide avec la ligne et la colonne, et fonctionne hors ligne.
Ce que ça faitC'est notre app, alors prenez cette recommandation avec des pincettes. C'est la comparaison ci-dessus qui doit tenir toute seule.
Le piège des formateurs en ligne
Chercher « JSON viewer » sur un téléphone mène à des sites qui mettent en forme tout ce que vous y collez. Pour des données publiques, aucun souci. Pour le reste, réfléchissez à ce que vous collez :
- Les réponses d'API contiennent souvent des jetons d'accès, des identifiants de session ou des clés d'API.
- Les données exportées contiennent souvent des noms, des e-mails et des adresses.
- Certains de ces sites proposent des liens « enregistrer » ou « partager » qui conservent sur leur serveur ce que vous avez collé, et des chercheurs en sécurité ont trouvé un grand nombre de ces extraits enregistrés, identifiants compris, récupérables publiquement.
Une app locale ne vous expose à rien. Si vous devez utiliser un site, choisissez-en un qui met en forme dans le navigateur sans rien envoyer, et n'utilisez jamais sa fonction d'enregistrement.
Si le fichier ne s'ouvre pas, ou s'ouvre mal
- « Invalid JSON » ou une vue vide : le fichier est mal formé, souvent à cause d'un seul caractère. Le guide du JSON invalide passe en revue toutes les erreurs courantes.
- Des guillemets typographiques dans un fichier saisi sur le téléphone : la ponctuation intelligente d'iOS remplace
"par“pendant la frappe, et JSON n'accepte que le guillemet droit. Désactivez-la dans Réglages → Général → Clavier → Ponctuation intelligente avant de modifier du JSON à la main. - C'est en fait du
.jsonlou du NDJSON : un objet JSON par ligne, et non un seul document. La plupart des visionneuses attendent un document unique et signalent une erreur au début de la ligne deux. - Il est énorme : une app native gère des fichiers bien plus gros qu'une page web ou un aperçu de texte, qui ont tendance à se figer en premier. Si le fichier fait des dizaines de mégaoctets, ouvrez-le dans une app plutôt que dans un onglet de navigateur.
Sur un iPad
Tout ce qui précède s'applique, avec deux améliorations qui valent le coup. Split View permet de garder le JSON à côté de l'app ou du navigateur que vous déboguez, et un clavier externe rend la modification à la main réaliste : un éditeur JSON avec des raccourcis clavier pour chercher et annuler, c'est presque comme travailler sur un portable.