JSONのトピック01

JSONの構文解析テキストはLitJson.dllを参照する必要があります

ダウンロード
リンク:https://pan.baidu.com/s/1ga8yFEZYLt9ZBPd3HUtODQパスワード:qkj8

2種類のJSONがあります。

[] ---のコレクションを表し

{----}オブジェクトを表します

string jsonstr="{ "heros":[{"name":"chneg","power":"90" },{"name":"li","power":"190"}]}"
string jsonstr="{"name":"cheng wenhao","power":10}"----------------表示一个json对象

点数

これは、基本型文字列JSONに変換することができます

2カスタムタイプは、テキスト文字列JSONに変換することができます

図3は、文字列にテキストの特殊なタイプではありません

4セットは、テキストの文字列に変換することができる、辞書は直接テキストJSONに変換することができません

5つの2つの一般的な方法

    public static JsonData ToObject(TextReader reader);

    public static JsonData ToObject(string json);

    public static T ToObject<T>(JsonReader reader);

    public static T ToObject<T>(TextReader reader);

    public static T ToObject<T>(string json);

ケース

1はいくつかの方法JSONの文字列に変換され、

カスタムタイプは、文字列のJSONに変換され、

public class Address
{
    public string id;
    public string address;
    public string iphoneNumber;
    public override string ToString()
    {
        return string.Format("id={0},address={1},iphoneNumber={2}",id,address,iphoneNumber);
    }
}

public class Person
{
    public string name;
    public Address address;
    public int id;
    public string sex;
    public int age;
    public string pos;

    public override string ToString()
    {
        return string.Format("id={0},name={1},sex={2},age={3},address={4}",id,name,sex,age,address);
    }
}

public void Test()
{
   Address address = new Address { address = "beijin", id = "14号楼", iphoneNumber = "13511065388" };

    Person p1 = new Person();
    p1.name = "damon";
    p1.id = 1000;
    p1.age = 23;
    p1.sex = "nan";
    p1.address = address;
    p1.pos = Vector3.zero.ToString();


    //将类转换成json字符串
    string jsonStr = JsonMapper.ToJson(p1);
    Debug.Log(jsonStr);
}

B、独自のテキスト文字列変換JSONを作成JsonData

public void Test()
{
    JsonData jsonData = new JsonData();
    jsonData["name"] = "damon";
    jsonData["id"] = 1000;
    jsonData["address"] = new JsonData();
    jsonData["address"]["id"] = "14号楼";
    jsonData["address"]["address"] = "Beijing";

    //将JsoData转换成json字符串类型
    Debug.Log(JsonMapper.ToJson(jsonData));
}

Cは、文字列のJSONの集合に変換され、

public void Test()
{
//将集合转换成json字符串
    List<Person> list = new List<Person>();
    Person p3 = new Person { id = 1000, name = "damon",sex="nan",pos="----",address=new Address { id="109",address="***********",iphoneNumber="1999"} };
    Person p4 = new Person { id = 1001, name = "damon", sex = "nan", pos = "----", address = new Address { id = "109", address = "***********", iphoneNumber = "1999" } };

    list.Add(p3);
    list.Add(p4);

    string jsonStr2 = JsonMapper.ToJson(list);
    Debug.Log(jsonStr2);
}

dが手動でJSONテキストを作成しました

string p1Str = @"[{'id':'1000','name':'damon','age':18},{'id':'1001','name':'damon01','age':19}]";
Debug.Log(JsonMapper.ToObject(p1Str));

おすすめ

転載: blog.csdn.net/weixin_36285892/article/details/82256617