C#使用LitJSON操作json数据

dll下载地址:

http://download.csdn.net/detail/xundh/9110601

示例

字符串生成JsonData对象

JsonData obj = JsonMapper.ToObject(jsonStr);

结合实体对象生成json

using LitJson;
using System;

public class Person
{
    // C# 3.0 auto-implemented properties
    public string   Name     { get; set; }
    public int      Age      { get; set; }
    public DateTime Birthday { get; set; }
}

public class JsonSample
{
    public static void Main()
    {
        PersonToJson();
        JsonToPerson();
    }

    public static void PersonToJson()
    {
        Person bill = new Person();

        bill.Name = "William Shakespeare";
        bill.Age  = 51;
        bill.Birthday = new DateTime(1564, 4, 26);

        string json_bill = JsonMapper.ToJson(bill);

        Console.WriteLine(json_bill);
    }

    public static void JsonToPerson()
    {
        string json = @" { ""Name"" : ""Thomas More"", ""Age"" : 57, ""Birthday"" : ""02/07/1478 00:00:00"" }";

        Person thomas = JsonMapper.ToObject<Person>(json);

        Console.WriteLine("Thomas' age: {0}", thomas.Age);
    }
}

节点属性

node["attribute"]

键是否存在

if (((IDictionary)jd).Contains("KeyName")) {
    string valuestr = (string)jd["KeyName"];
}       

生成json字符串

   Hashtable result = new Hashtable();
   result["moveup_dir_path"] = moveupDirPath;
   context.Response.Write(JsonMapper.ToJson(result));

其它有用代码

param转json字符串

        private string str2json(string str)
        {
            var result = "{";
            string[] oneitem = str.Split('&');
            foreach (string item in oneitem)
            {
                if (item.Trim() == "") continue;
                string[] v = item.Split('=');
                result += "'" + v[0] + "':";
                if (v.Count() == 2)
                    result += "'" + v[1] + "'";
                else
                    result += "''";
                result += ",";
            }
            result = result.TrimEnd(',') + "}";
 return result;
        }

更多用法参考这里:
http://lbv.github.io/litjson/docs/quickstart.html

你可能感兴趣的:(C#使用LitJSON操作json数据)