Maison > développement back-end > C++ > Comment sérialiser et désérialiser du JSON délimité par des lignes (LDJSON) en C# à l'aide de JSON.NET ?

Comment sérialiser et désérialiser du JSON délimité par des lignes (LDJSON) en C# à l'aide de JSON.NET ?

Barbara Streisand
Libérer: 2025-01-22 16:42:15
original
189 Les gens l'ont consulté

How to Serialize and Deserialize Line-Delimited JSON (LDJSON) in C# using JSON.NET?

Utiliser JSON.NET pour traiter du JSON délimité par des lignes (LDJSON) en C#

Dans certaines applications, telles que Google BigQuery, le format JSON délimité par des lignes (LDJSON) est requis. Ce format sépare chaque objet JSON par un caractère de nouvelle ligne, permettant une importation efficace des données.

Comment sérialiser et désérialiser LDJSON

La populaire bibliothèque C# JSON JSON.NET fournit une solution au problème LDJSON. Vous pouvez analyser les données LDJSON manuellement en utilisant JsonTextReader et en définissant l'indicateur SupportMultipleContent sur true.

Exemple de sérialisation

Pour les listes d'objets, vous pouvez sérialiser chaque objet individuellement et les concaténer en une seule chaîne LDJSON.

Exemple de désérialisation

Pour désérialiser les données LDJSON, créez un lecteur à l'aide de JsonTextReader et parcourez ces objets, en désérialisant chaque objet vers le type d'objet correspondant.

Exemple de code (pseudocode, doit être ajusté en fonction du type d'objet réel) :

<code class="language-csharp">while (jsonReader.Read())
{
  Foo foo = jsonSerializer.Deserialize<Foo>(jsonReader);
  jsonList.Add(foo); 
}</code>
Copier après la connexion

Si le résultat souhaité est une liste d'objets, vous pouvez ajouter chaque objet désérialisé à la liste dans une boucle.

Prise en charge du JSON séparé par des virgules

Avec Json.Net 10.0.4 et versions ultérieures, le code fourni prend également en charge les entrées JSON séparées par des virgules. Cela rend le travail avec le format de données JSON plus flexible.

Résumé

Cette méthode fournit un mécanisme simple pour sérialiser et désérialiser les données LDJSON à l'aide de JSON.NET en C#. En définissant l'indicateur SupportMultipleContent, vous pouvez gérer efficacement plusieurs objets JSON dans un seul flux.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal