Json topic 01

Json parsing text need to reference LitJson.dll

Download
link: https://pan.baidu.com/s/1ga8yFEZYLt9ZBPd3HUtODQ Password: qkj8

There are two types Json

[] --- represents a collection of

{----} denotes the object

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

Points

It can be converted into a base-type string Json

2 custom type may be converted to a text string Json

3 is not a special type of text into a string

4 sets may be converted to a string of text, the dictionary can not be directly converted to text json

5 two common methods

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

Case

1 is converted into a string of several ways Json

a custom type is converted into a string 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 JsonData create their own text string conversion Json

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 is converted into a collection of string 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 created manually Json text

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

Guess you like

Origin blog.csdn.net/weixin_36285892/article/details/82256617