00

En bref

  • JSON Lines est un format texte qui stocke des données structurées avec une valeur JSON par ligne et impose UTF-8 sans BOM ainsi que l’absence de lignes vides.
  • Sous Windows ou macOS, ouvrez le fichier avec un éditeur de texte prenant en charge UTF-8. Sur téléphone, choisissez un éditeur capable d’accéder au fichier et de lire UTF-8 ; les limites de taille dépendent de l’application. Pour traiter les données, analysez chaque ligne séparément avec un analyseur JSON. La structure convient aux outils texte Unix et aux pipelines du shell. LF et CRLF sont acceptés. JSON Lines recommande un saut de ligne final ; NDJSON l’impose après chaque texte JSON.
  • Le risque inhérent au format est faible : la syntaxe JSON valide exclut les affectations et les appels de fonction. Utilisez un analyseur JSON pour les textes non fiables ; eval et les fonctions similaires peuvent introduire une exécution de code. Une analyse réussie ne prouve ni la fiabilité du contenu ni la conservation de toutes les valeurs après conversion.
01

JSON Lines (.jsonl, .ndjson) : ouvrir et convertir les fichiers

JSON Lines, aussi appelé JSON délimité par des sauts de ligne, convient aux enregistrements, journaux et messages traités individuellement. Chaque ligne peut contenir un objet, un tableau ou une valeur scalaire ; null est valide. JSON Lines utilise .jsonl et la spécification NDJSON recommande .ndjson. La documentation JSON Lines propose application/jsonl tout en précisant qu’il n’est pas normalisé ; NDJSON recommande application/x-ndjson.

Gardez l’original

Pour obtenir un document JSON classique, rassemblez les valeurs des lignes JSONL dans un tableau en conservant leur ordre. Cette conversion découle de la structure des formats ; changer l’extension ne suffit pas. Vérifiez les clés d’objet dupliquées et la précision numérique avant l’analyse et l’export. Pour CSV, il faut aussi définir comment représenter les tableaux, les valeurs imbriquées et les enregistrements ayant des champs différents.

02

Comment l’ouvrir

Sous Windows ou macOS, ouvrez le fichier avec un éditeur de texte prenant en charge UTF-8. Sur téléphone, choisissez un éditeur capable d’accéder au fichier et de lire UTF-8 ; les limites de taille dépendent de l’application. Pour traiter les données, analysez chaque ligne séparément avec un analyseur JSON. La structure convient aux outils texte Unix et aux pipelines du shell. LF et CRLF sont acceptés. JSON Lines recommande un saut de ligne final ; NDJSON l’impose après chaque texte JSON.

Je veux seulement le consulter

Sous Windows ou macOS, ouvrez le fichier avec un éditeur de texte prenant en charge UTF-8. Sur téléphone, choisissez un éditeur capable d’accéder au fichier et de lire UTF-8 ; les limites de taille dépendent de l’application. Pour traiter les données, analysez chaque ligne séparément avec un analyseur JSON. La structure convient aux outils texte Unix et aux pipelines du shell. LF et CRLF sont acceptés. JSON Lines recommande un saut de ligne final ; NDJSON l’impose après chaque texte JSON.

Je dois l’envoyer

Pour obtenir un document JSON classique, rassemblez les valeurs des lignes JSONL dans un tableau en conservant leur ordre. Cette conversion découle de la structure des formats ; changer l’extension ne suffit pas. Vérifiez les clés d’objet dupliquées et la précision numérique avant l’analyse et l’export. Pour CSV, il faut aussi définir comment représenter les tableaux, les valeurs imbriquées et les enregistrements ayant des champs différents.

03

Sécurité

Le risque inhérent au format est faible : la syntaxe JSON valide exclut les affectations et les appels de fonction. Utilisez un analyseur JSON pour les textes non fiables ; eval et les fonctions similaires peuvent introduire une exécution de code. Une analyse réussie ne prouve ni la fiabilité du contenu ni la conservation de toutes les valeurs après conversion.

Arrêtez-vous si vous voyez ceci

Expéditeur inconnu, nom qui se termine par deux extensions, contenu qui ne correspond pas à l’extension : vérifiez avant d’ouvrir.

04

La conversion

Pour obtenir un document JSON classique, rassemblez les valeurs des lignes JSONL dans un tableau en conservant leur ordre. Cette conversion découle de la structure des formats ; changer l’extension ne suffit pas. Vérifiez les clés d’objet dupliquées et la précision numérique avant l’analyse et l’export. Pour CSV, il faut aussi définir comment représenter les tableaux, les valeurs imbriquées et les enregistrements ayant des champs différents.

Avant de convertir

Convertissez une copie, jamais l’original, puis comparez qualité, métadonnées et mise en page avec le fichier de départ.

05

Questions fréquentes

À quoi sert un fichier JSON Lines ?

Un fichier JSON Lines contient une valeur JSON par ligne pour traiter individuellement des enregistrements, journaux ou messages. Une ligne peut contenir un objet, un tableau ou une valeur scalaire, y compris null. Les lignes vides ne sont pas valides en JSON Lines.

Comment ouvrir un fichier JSONL sous Windows ?

Ouvrez le fichier .jsonl depuis un éditeur de texte compatible UTF-8. Chaque ligne représente une valeur JSON distincte. Pour traiter les enregistrements, utilisez un analyseur JSON ligne par ligne ; un analyseur attendant un document unique peut rejeter plusieurs valeurs.

Comment ouvrir un fichier JSONL sur Mac ?

Utilisez un éditeur en mode texte brut avec l’encodage UTF-8. Chaque enregistrement doit tenir sur une ligne. Dans le terminal, la structure convient aux outils texte Unix et aux pipelines du shell, avec une analyse JSON distincte pour chaque ligne.

Comment ouvrir un fichier NDJSON sur téléphone ?

Choisissez un éditeur de texte capable d’accéder au fichier sur le téléphone et de lire UTF-8, puis ouvrez-y le .ndjson. L’accès aux fichiers et la taille acceptée dépendent de l’application ; le format ne garantit pas la compatibilité de tous les éditeurs mobiles.

Pourquoi des erreurs NDJSON sont-elles liées aux lignes vides ?

JSON Lines interdit les lignes vides. Un analyseur NDJSON peut les ignorer si ce comportement est documenté et devrait permettre de le configurer, d’où des différences entre outils. Vérifiez aussi les valeurs JSON incomplètes ou les enregistrements répartis sur plusieurs lignes.

Faut-il choisir JSON Lines ou JSON classique pour plusieurs enregistrements ?

Choisissez JSON Lines pour lire ou traiter chaque enregistrement par ligne. Préférez un tableau JSON classique si le destinataire attend un document JSON unique. Plusieurs valeurs séparées par des sauts de ligne ne forment pas un seul document JSON valide.

Comment convertir JSONL en tableau JSON ?

Analysez chaque ligne comme une valeur JSON, conservez l’ordre et écrivez les valeurs dans un tableau en les séparant par des virgules. Cette conversion découle de la structure des formats. Renommer .jsonl en .json ne transforme pas les enregistrements.

Quelles pertes de données vérifier lors d’une conversion de JSONL vers CSV ?

Définissez la représentation des objets imbriqués, tableaux et champs variables dans les colonnes CSV. Vérifiez aussi les clés dupliquées et les grands nombres ou décimaux de haute précision : l’analyseur peut ne garder que la dernière valeur dupliquée ou modifier des nombres dépassant sa précision.

Quels sont les risques de sécurité des fichiers JSONL d’origine inconnue ?

La syntaxe JSON valide exclut les affectations et les appels de fonction. Toutefois, eval et les fonctions similaires peuvent introduire une exécution de code avec un texte non fiable. Utilisez un analyseur JSON. Une analyse réussie ne prouve pas la fiabilité du contenu.

Comment corriger les erreurs d’encodage UTF-8 dans JSON Lines ?

Identifiez l’encodage d’origine, puis enregistrez une copie correctement décodée en UTF-8 sans BOM. JSON Lines impose cet encodage. Si une lecture précédente a déjà remplacé des caractères, modifier l’indication d’encodage ne reconstitue pas le texte initial.

Quelles limites de taille et d’imbrication s’appliquent aux fichiers JSONL ?

Les spécifications citées ne donnent pas de limite universelle d’ouverture. Les analyseurs peuvent limiter la taille du texte, la profondeur et la longueur des chaînes. Des substituts Unicode non appariés peuvent aussi provoquer un comportement imprévisible ou des erreurs d’exécution.

06

Formats associés

Sources

JSON Lines — 官方格式文档 · JSON Lines 格式项目,维护者 Ian Ward

NDJSON — Newline delimited JSON Specification · NDJSON 官方规范仓库

RFC 8259 — The JavaScript Object Notation (JSON) Data Interchange Format · IETF Standards Track / RFC Editor