基于 C# 的 JSON 解析库 CsharpJson
- 授权协议: GPL
- 开发语言: C#
- 操作系统: 跨平台
- 软件首页: http://git.oschina.net/xiaoguozhier/CsharpJson
- 软件文档: http://git.oschina.net/xiaoguozhier/CsharpJson/blob/master/README.md
软件介绍
现有的轮子觉得不好用,又造一个,欢迎来测试提bug!
经常拿 JSON 当协议用,结果发现好多解析库,每次解析都要先定义类,想找个通用的都不是很满意。拿 JSON 当协议,会定义几种格式,这样的话要解析就得每种都定义个类,然后又没法判断哪种格式对应那个类,总之感觉难用,所以就动手写了一个。
生成 JSON:
using CsharpJson;
namespace test
{
class MainClass
{
public static void Main(string[] args)
{
JsonObject child = new JsonObject();
child["china"] = "hello";
child["shanghai"] = 123;
child.Add("one", "abc");
child.Add("two", 12);
child.Add("three", 44.9);
JsonArray arr = new JsonArray();
arr[0] = true;
arr[1] = 100;
arr[2] = "你好";
arr.Add("12");
arr.Add(456);
arr.Add(false);
arr.Add(child);
JsonObject obj = new JsonObject();
obj.Add("中国", "china");
obj.Add("北京", true);
obj.Add("上海", 123);
obj.Add("NULL",null);
obj.Add("childobj", child);
obj.Add("arrayvalue", arr);
JsonDocument doc=new JsonDocument();
doc.Object=obj;
string val = doc.ToJson();
Console.WriteLine("生成的Json字符串:");
Console.WriteLine(val);
}
}
}
解析 JSON:
string data = "{\"中国\": \"china\",\"北京\": true,\"上海\": 123}";
doc = JsonDocument.FromString(data);
if(doc.IsObject())
{
JsonObject jsobj = doc.Object;
foreach(string key in jsobj.Keys)
{
switch(jsobj[key].Valuetype)
{
case JsonType.BOOL:
Console.WriteLine("key={0},value={1}",key,jsobj[key].ToBool());
break;
case JsonType.NUMBER:
Console.WriteLine("key={0},value={1}",key,jsobj[key].ToInt());
break;
case JsonType.STRING:
Console.WriteLine("key={0},value={1}",key,jsobj[key].ToString());
break;
}
}
}
新媒体运营实战技能
张向南 勾俊伟 / 人民邮电出版社 / 2017-5 / 39.80元
《新媒体运营实战技能》共7章。第1章重点介绍了新媒体图片的创意思路及制作技巧,包括微信公众号封面图、信息长图、icon图标、九宫图、gif图片的具体实战操作;第2章重点介绍了创意云文字、微信排版、滑动看图等新媒体文字的排版方法与处理技巧;第3章是新媒体表单,引导读者对表单结构、设计场景及具体应用全面了解;第4章关于H5的创意思路及制作方法,解析了引发H5传播的心理因素,并重点介绍H5的制作工具与具......一起来看看 《新媒体运营实战技能》 这本书的介绍吧!
