Explication détaillée de l'exemple de code C# utilisant LitJson pour analyser JSON

黄舟
Libérer: 2017-03-23 11:54:56
original
2435 Les gens l'ont consulté

Cet article présente principalement l'exemple de code de C# utilisant LitJson pour analyser JSON. L'éditeur pense que c'est plutôt bon, je vais donc le partager avec vous maintenant et le donner comme référence. Suivons l'éditeur et jetons un coup d'œil.

JSON (JavaScript Object Notation) est un format d'échange de données léger. Il est basé sur un sous-ensemble de JavaScript (Standard ECMA-262 3e édition – décembre 1999). JSON utilise un format de texte totalement indépendant du langage, mais utilise également des conventions similaires à la famille des langages C (notamment C, C++, C#, Java, JavaScript, Perl, Python, etc. ) . Ces propriétés font de JSON un langage d'échange de données idéal. Facile à lire et à écrire pour les humains, et facile à analyser et à générer pour les machines.

Si vous avez déjà utilisé Json, vous saurez que Json peut être divisé en deux parties :

1. de paires nom/valeur)

2. Tableau JSON (une liste ordonnée de valeurs)

Il existe de nombreux packages open source pour analyser JSON, qui sont largement utilisés dans diverses situations, notamment pour le réseau. transmission.

Cet article présente l'utilisation de LitJson et utilise le langage C# pour introduire l'utilisation de JSON, qui peut être utilisé dans les applications C#, les programmes Web et les scripts C# Unity3d.

Première étape : Téléchargez LitJson et importez le projet en cours.

Étape 2 : Plusieurs exemples de méthodes litJson

1 Utilisez JsonData pour traiter et générer json : {"name":"peiandsky","age":28,"sex": " male"}

JsonData data = new JsonData();

    data["name"] = "peiandsky";

    data["age"] = 28;

    data["sex"] ="male";

    string json1= data.ToJson();
Copier après la connexion

2. Objets imbriqués dans objet : {"name":"peiandsky","info":{"sex":"male"," age" :28}>

JsonData data2 = new JsonData();

    data2["name"] = "peiandsky";

    data2["info"] = new JsonData();

    data2["info"]["sex"] = "male";

    data2["info"]["age"] = 28;

string json2 = data2.ToJson();
Copier après la connexion

3. Analysez le Json des deux manières ci-dessus pour JsonData

JsonData jsonData2 = JsonMapper.ToObject(json2);
Debug.Log(jsonData2["name"] + "  " + data2["info"]["sex"]);
Copier après la connexion

4. Utilisez JsonMapper pour traiter Json

Player player = new Player();

    player.name = "peiandsky";

    player.age = 23;

    player.sex = "male";

    string json=JsonMapper.ToJson(player);
Copier après la connexion

. 5. Analysez le json en 4

Player player2 = JsonMapper.ToObject<Player>(json);
Copier après la connexion

6. Utilisez la manière la plus primitive pour générer Json

et convertissez le tableau en json :["one", "two", "trois", "quatre"]

 JsonWriter writer = new JsonWriter();

    writer.WriteArrayStart();

    writer.Write("one");

    writer.Write("two");

    writer.Write("three");

    writer.Write("four");

    writer.WriteArrayEnd();
Copier après la connexion

Convertir l'objet composite en jsonstring : {"book":{"title":"jeu Android ! " ,"author":"pei","bookdetail":{"pages":429,"about":null}}}

JsonWriter writer2 = new JsonWriter();

 

    writer2.WriteObjectStart();

    writer2.WritePropertyName("book");

 

    writer2.WriteObjectStart();

    writer2.WritePropertyName("title");

    writer2.Write("android game!");

    writer2.WritePropertyName("author");

    writer2.Write("pei");

    writer2.WritePropertyName("bookdetail");

 

    writer2.WriteObjectStart();

    writer2.WritePropertyName("pages");

    writer2.Write(429);

    writer2.WritePropertyName("about");

    writer2.Write(null);

    writer2.WriteObjectEnd();

 

    writer2.WriteObjectEnd();

 

    writer2.WriteObjectEnd();

    Debug.Log(writer2.ToString());
Copier après la connexion

Cette méthode est très peu pratique et n'est pas recommandée.

Lors de l'utilisation de LitJson, il est recommandé d'utiliser JsonData et JsonMapper pour gérer l'encodage et l'analyse Json.

Person[] p_array = { p,p,p};

    string json_array=JsonMapper.ToJson(p_array);

    Debug.Log(json_array);

 

    JsonData pa = JsonMapper.ToObject(json_array);

 

    Debug.Log(pa.IsArray+"   "+pa.Count);

 

    for (int i = 0; i < pa.Count;i++ )

    {

      Debug.Log(pa[i]["name"]+"-"+pa[i]["age"]+"-"+pa[i]["score"]+"-"+pa[i]["birth"]);

      int age = int.Parse(pa[i]["age"].ToString());

      Debug.Log(age);

    }
Copier après la connexion

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!

Étiquettes associées:
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
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal