JSON.NET propose des outils robustes pour gérer les données JSON. Ce guide se concentre sur l'analyse d'un flux d'objets JSON concaténés dans une IEnumerable
collection.
La stratégie de base consiste à utiliser un JsonSerializer
avec CheckAdditionalContent
défini sur false
, permettant l'analyse de plusieurs objets. Le flux est enveloppé dans un StreamReader
, alimentant un JsonTextReader
pour l'ingestion de données JSON.
Pour traiter le flux continu, régler SupportMultipleContent
sur true
est essentiel. Un piège courant est de ne pas faire avancer correctement le lecteur après la désérialisation. La solution réside dans une boucle soigneusement structurée :
<code class="language-csharp">while (jsonReader.Read()) { yield return serializer.Deserialize<TResult>(jsonReader); }</code>
Cette boucle garantit que chaque objet JSON est lu et désérialisé en un objet TResult
, produisant ainsi efficacement chaque objet de la collection IEnumerable
.
N'oubliez pas que le IEnumerable
doit être itéré pendant que le flux reste ouvert. L'exemple suivant illustre cela :
<code class="language-csharp">using (var stream = /* your stream */) { IEnumerable<MyClass> result = ReadJson<MyClass>(stream); foreach (var item in result) { Console.WriteLine(item.MyProperty); } }</code>
Pour des informations détaillées et d'autres exemples, reportez-vous aux ressources suivantes :
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!