LitJson JavaScriptSerializer
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls; using LitJson;
using System.Data;
using System.Collections;
using System.Web.Script.Serialization; public class Person
{ public string Name { get; set; }
public int Age { get; set; }
} public partial class _Default : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
//Response.AddHeader("Content-Type", "application/json;");
//Response.ContentType = "application/json";
//Response.ContentEncoding = System.Text.Encoding.UTF8;
#region LitJson练习
JsonData jd = new JsonData();
jd["sada"] = "dsad";
jd["www"] = ;
JsonData jr = new JsonData();
jr["m"] = jd;//可以赋值,也可以赋值jsondata
jr["time"] = DateTime.Now.ToLocalTime().ToString();
jr["qqq"] = ;
jr["asda"] = "dawd";
string json = JsonMapper.ToJson(jr);//②步,jsondata不是json字符串,还要把jsondata序列化,
Response.Write(json);
// {
// "m": {
// "sada": "dsad",
// "www": 123
// },
// "time": "2015-04-19 14:38:41",
// "qqq": 567,
// "asda": "dawd"
// }
#endregion
#region ArrayList,List<>--->[]随意是数字,字符串
//ArrayList arr1 = new ArrayList();
//arr1.Add("dasda");
//arr1.Add("mmm");
//arr1.Add(99999);
//string rdt = JsonMapper.ToJson(arr1);//["dasda","mmm",99999]
//Response.Write(rdt); //List<int> list1 = new List<int>();
//list1.Add(5);
//list1.Add(8);
//string rmt = JsonMapper.ToJson(list1);//[5,8]
//Response.Write(rmt); //List<string> list = new List<string>();
//list.Add("xiaoming");
//list.Add("xiaohong");
//string rat = JsonMapper.ToJson(list);//["xiaoming","xiaohong"]数组
//Response.Write(rat);
#endregion
#region 键值对-->{}字典Hashtable,Dictionary<>,序列化成json,唯一要求键要为字符串 //Hashtable has = new Hashtable();
//has.Add("1", "sada");
//has.Add("5", 99);
//string str = JsonMapper.ToJson(has);
//Response.Write(str); //Dictionary<string, int> dic1 = new Dictionary<string, int>();
//dic1.Add("1", 5);
//dic1.Add("3", 9);
//var json = JsonMapper.ToJson(dic1);
//Response.Write(json); //Dictionary<string, string> dic = new Dictionary<string, string>();//
//dic.Add("xiaohong", "28");
//dic.Add("xiaolan", "22");
//string json = JsonMapper.ToJson(dic);//{"xiaohong":"28","xiaolan":"22"}
//Response.Write(json);
#endregion
#region 无法将类型为“system.int32”的对象强制转换为类型“system.string”。
//Hashtable has = new Hashtable();
//has.Add(1, "sada");
//has.Add(5, "sadjdi");
//string str = JsonMapper.ToJson(has);//无法将类型为“System.Int32”的对象强制转换为类型“System.String”
//Response.Write(str); //Dictionary<int, string> dic = new Dictionary<int, string>();//
//dic.Add(1, "dawd");
//dic.Add(9, "www");
//string json = JsonMapper.ToJson(dic);
//Response.Write(json); //Dictionary<int, int> dic1 = new Dictionary<int, int>();
//dic1.Add(1, 5);
//dic1.Add(3, 9);
//var json = JsonMapper.ToJson(dic1);
//Response.Write(json);//无法将类型为“System.Int32”的对象强制转换为类型“System.String”
#endregion
#region JavaScriptSerializer,内置序列化的一种方式,同上,键为字符串
//JavaScriptSerializer javascriptSerializer = new JavaScriptSerializer();
//var json = javascriptSerializer.Serialize(dic1);
//Response.Write(json);
#endregion
#region 普通类-->{},JsonMapper.ToJson(),JavaScriptSerializer和序列化普通类
//Person p = new Person();
//p.Name = "like";
//p.Age = 24;
//string ret = JsonMapper.ToJson(p);//{"Name":"like","Age":24} //Person p1 = new Person();
//p.Name = "like";
//p.Age = 24;
//JavaScriptSerializer javascriptSerializer = new JavaScriptSerializer();
//var json = javascriptSerializer.Serialize(p1);
//Response.Write(json);
#endregion
}
}
全部代码
对一个集合,要求不序列化完,对其中的几项序列化。这时内置序列化对象就不方便。这是用LitJson[“key”]=value;方便。
List<RechargeM> list = RecBL.GetTB(Gid);
foreach (var item in list)
{
JsonData jd = new JsonData();
jd["ID"] = Tools.GetString(item.Id);
jd["Num"] = item.cRech_Num;
jd["Money"] = item.mRech_Money;
jd["Date"] = Tools.GetString(item.dRech_Date);
row.Add(jd);
}
Jlist["RechargeLis"] = row;
LitJson JavaScriptSerializer的更多相关文章
- JavaScriptSerializer 序列化json 时间格式
利用JavaScriptSerializer 序列化json 时间格式,得到的DateTime值值显示为“/Date(700000+0500)/”形式的JSON字符串,显然要进行转换 1.利用字符串直 ...
- JavaScriptSerializer使用条件
JavaScriptSerializer使用条件:需先引用组件:System.Web.Extensions 类全称:System.Web.Script.Serialization.JavaScript ...
- 在引用KindEditor编辑器时,运行时出现以下错误:错误46 找不到类型或命名空间名称“LitJson”(是否缺少 using 指令或程序集引用?)
将asp.net下bin文件夹下的文件LitJSON.dll拷贝到工程的bin目录下,并在工程中添加引用 在后台加入: using LitJson;
- 关于litJson的System.InvalidCastException
最近在做一个Unity3D的项目,用到了litJson库, 它比JavaScript里的JSON解析更加严格, 有时候解析数据的时候会出现类型不对. 比如说 {"data":12} ...
- XML数据 JSON数据 LitJSON 数据 的编写和解析 小结
用XML生成如下数据<?xml version="1.0"encoding="UTF-8"?><Transform name="My ...
- JSON 序列化和反序列化——JavaScriptSerializer实现
一. JavaScriptSerializer 类由异步通信层内部使用,用于序列化和反序列化在浏览器和 Web 服务器之间传递的数据.您无法访问序列化程序的此实例.但是,此类公开了公共 API.因此, ...
- JavaScriptSerializer序列化时间处理
JavaScriptSerializer序列化时间后会把时间序列化成N进制的鬼数据,于是查了下质料坐下记录 假设list = News List<Text>(){new Text(){id ...
- JavaScriptSerializer 中的匿名类型 转json
二:JavaScriptSerializer 中的匿名类型 这个类型我想大家都清楚,不过性能更高的方式应该是用JsonConvert吧,但这个不是本篇讨论的话题,我们重点来看看匿名类型的Json序列化 ...
- asp.net JavaScriptSerializer实现序列化和反序列化
通过JavaScriptSerializer来实现.它的名字空间为:System.Web.Script.Serialization 如果要使用它,还须添加 System.Web.Extensions库 ...
随机推荐
- mysql复制表结构create table as和like的区别
对于MySQL的复制相同表结构方法,有create table as 和create table like 两种,区别是什么呢? create table t2 as select * from t1 ...
- 【appium】根据class_name定位元素
目前没有尝试成功,等成功后补充 class_name=class可以通过UIAutomatorViewer获得.
- linux 标准I/O (一)
在前面<UNIX环境高级编程----文件描述符浅析>一文中所讲的I/O函数都是针对文件描述符.而对于标准I/O库,它们的操作都是围绕流来进行的.当用标准I/O库打开或创建一个文件时,我们已 ...
- linux 静态库文件
1.生成目标文件 gcc -o mylib.o -c mylib.c 2.生成静态库文件 ar rcs libmylib.a mylib.o 查看库信息: nm libmylib.a //====== ...
- javascript 全选 反选 js代码
<script type="text/javascript"> //全选function checkAll() { var objs = window.document ...
- BASIC-22_蓝桥杯_FJ的字符串
示例代码: #include <stdio.h>#define N 1000000 int main(void){ int n = 0 , i = 0; char arr[N] , tmp ...
- bzoj4697: 猪
Description 红学姐和黄学长是好朋友.红学姐有一只宠物,叫魔法猪.黄学长也有一只宠物,叫小奇.有 n 个猪圈排成一排 ,魔法猪藏在某个猪圈中.为了找到魔法猪,小奇会向你询问一些猪圈中猪的个数 ...
- js实现手机号身份证等加星(*)号
下面来为各位整理了一些关于js实现手机号身份证等加星(*)号代码了,在js不足时我们还补充了php实现手机号身份证等加星(*)号的函数,有兴趣的一起来看看. 有时候为了不让用户的手机号码和身份证号 ...
- 理解Storm Metrics
在hadoop中,存在对应的counter计数器用于记录hadoop map/reduce job任务执行过程中自定义的一些计数器,其中hadoop任务中已经内置了一些计数器,例如CPU时间,GC时间 ...
- 基于WMI获取本机真实网卡物理地址和IP地址
using System; using System.Collections.Generic; using System.Management; using System.Runtime.Intero ...