Heim >Backend-Entwicklung >C#.Net-Tutorial >Detaillierte Erläuterung des Beispielcodes von C# mit LitJson zum Parsen von JSON

Detaillierte Erläuterung des Beispielcodes von C# mit LitJson zum Parsen von JSON

黄舟
黄舟Original
2017-03-23 11:54:562478Durchsuche

In diesem Artikel wird hauptsächlich der Beispielcode von C# vorgestellt, der LitJson zum Parsen von JSON verwendet. Jetzt werde ich ihn mit Ihnen teilen und als Referenz verwenden. Folgen wir dem Editor und werfen wir einen Blick darauf.

JSON (JavaScript Object Notation) ist ein leichtes Datenaustauschformat. Es basiert auf einer Teilmenge von JavaScript (Standard ECMA-262, 3. Ausgabe – Dezember 1999). JSON verwendet ein völlig sprachunabhängiges Textformat, verwendet aber auch Konventionen ähnlich der C-Sprachfamilie (einschließlich C, C++, C#, Java, JavaScript, Perl, Python usw.). ). Diese Eigenschaften machen JSON zu einer idealen Datenaustauschsprache. Für Menschen leicht zu lesen und zu schreiben und für Maschinen leicht zu analysieren und zu generieren.

Wenn Sie jemals Json verwendet haben, wissen Sie, dass Json in zwei Teile unterteilt werden kann:

1 Json-Objekt (Eine Sammlung von Name/Wert-Paaren)

2. JSON-Array (Eine geordnete Liste von Werten)

Es gibt viele Open-Source-Pakete zum Parsen von JSON, die in verschiedenen Situationen weit verbreitet sind, insbesondere für Netzwerke Übertragung.

Dieser Artikel stellt die Verwendung von LitJson vor und verwendet die C#-Sprache, um die Verwendung von JSON vorzustellen, das in C#-Anwendungen, Webprogrammen und Unity3d C#-Skripten verwendet werden kann.

Schritt eins: Laden Sie LitJson herunter und importieren Sie das aktuelle Projekt.

Schritt 2: Mehrere Beispiele für litJson-Methoden

1. Verwenden Sie JsonData, um JSON zu verarbeiten und zu generieren: {"name": "peiandsky", "age":28,"sex": " männlich"}

JsonData data = new JsonData();

    data["name"] = "peiandsky";

    data["age"] = 28;

    data["sex"] ="male";

    string json1= data.ToJson();

2. Verschachtelte Objekte im Objekt: {"name": "peiandsky", "info": {"sex": "männlich", "Alter" :28}}

JsonData data2 = new JsonData();

    data2["name"] = "peiandsky";

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

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

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

string json2 = data2.ToJson();

3. Analysieren Sie den Json auf die beiden oben genannten Arten in JsonData

JsonData jsonData2 = JsonMapper.ToObject(json2);
Debug.Log(jsonData2["name"] + "  " + data2["info"]["sex"]);

4. Verwenden Sie JsonMapper, um Json zu verarbeiten

Player player = new Player();

    player.name = "peiandsky";

    player.age = 23;

    player.sex = "male";

    string json=JsonMapper.ToJson(player);

5. Analysieren Sie den JSON in 4

Player player2 = JsonMapper.ToObject<Player>(json);

6. Verwenden Sie die primitivste Methode, um JSON zu generieren

und konvertieren Sie das Array in JSON:["one", „two“, „ three“, „four“]

 JsonWriter writer = new JsonWriter();

    writer.WriteArrayStart();

    writer.Write("one");

    writer.Write("two");

    writer.Write("three");

    writer.Write("four");

    writer.WriteArrayEnd();

Konvertieren Sie das zusammengesetzte Objekt in JSONstring: {"book":{"title":"android game! " ,"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());

Diese Methode ist sehr umständlich und wird nicht empfohlen.

Bei Verwendung von LitJson wird empfohlen, JsonData und JsonMapper für die Json-Codierung und -Analyse zu verwenden.

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);

    }

Das obige ist der detaillierte Inhalt vonDetaillierte Erläuterung des Beispielcodes von C# mit LitJson zum Parsen von JSON. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn