序列化各个类型成JSON XML实例
LitJson组件序列化请参考http://www.cnblogs.com/leee/p/4437230.html
XML序列化请参考http://www.cnblogs.com/leee/p/4244549.html
这篇实例是关于JavaScriptSerializer对各个类型的序列化。
将一个类的实例序列成json
public class Person
{ public string Name { get; set; }
public int Age { get; set; }
} Person p1 = new Person();
p1.Name = "like";
p1.Age = 24;
JavaScriptSerializer javascriptSerializer = new JavaScriptSerializer();
var json = javascriptSerializer.Serialize(p1);
Response.Write(json);//{"Name":"like","Age":24}
将一个序列序列成“数组”
string[] arr = new string[] { "s", "dd", "fff" };
JavaScriptSerializer javascriptSerializer = new JavaScriptSerializer();
var json = javascriptSerializer.Serialize(arr);
Response.Write(json);//["s","dd","fff"]
将一个list序列成“数组”
List<string> list = new List<string>();
list.Add("sss");
list.Add("dd");
JavaScriptSerializer javascriptSerializer = new JavaScriptSerializer();
var json = javascriptSerializer.Serialize(list);
Response.Write(json);//["sss","dd"]
将一个无序字典hashtable序列成json
Hashtable has = new Hashtable();
has.Add("1", "sada");
has.Add("5", "sadjdi");
JavaScriptSerializer javascriptSerializer = new JavaScriptSerializer();
var json = javascriptSerializer.Serialize(has);
Response.Write(json);//{"1":"sada","5":"sadjdi"}
将一个泛型字典序列成json
Dictionary<string, string> dic = new Dictionary<string, string>();
dic.Add("first", "sasa");
dic.Add("second", "dddd");
JavaScriptSerializer javascriptSerializer = new JavaScriptSerializer();
var json = javascriptSerializer.Serialize(dic);
Response.Write(json);//{"first":"sasa","second":"dddd"}
将一个Datatable序列成数组
public string DateTableToJson(DataTable dt)
{
List<Dictionary<string, object>> list = new List<Dictionary<string, object>>();
foreach (DataRow dr in dt.Rows)
{
Dictionary<string, object> result = new Dictionary<string, object>();
foreach (DataColumn dc in dt.Columns)
{
result.Add(dc.ColumnName, dr[dc]);
}
list.Add(result);
}
JavaScriptSerializer javascriptSerializer = new JavaScriptSerializer();
var json = javascriptSerializer.Serialize(list);
return json;
}
手动写一个datatable
//手动写一个datatable
DataTable dt = new DataTable("cart");
DataColumn l0 = new DataColumn("编号", Type.GetType("System.Int32"));
DataColumn l1 = new DataColumn("姓名", Type.GetType("System.String"));
DataColumn l2 = new DataColumn("年龄", Type.GetType("System.Int16"));
DataColumn l3 = new DataColumn("身高", Type.GetType("System.Int16"));
DataColumn l4 = new DataColumn("视力", Type.GetType("System.Int64"));
DataColumn l5 = new DataColumn("创建时间", Type.GetType("System.DateTime"));
DataColumn[] col = { l0, l1, l2, l3, l4, l5, };
dt.Columns.AddRange(col);
for (int i = 0; i < 5; i++)
{
DataRow row = dt.NewRow(); //new DataRow();
row["编号"] = i + 1;
row["姓名"] = "小王";
row["年龄"] = 18;
row["身高"] = 1516;
row["视力"] = 15659;
row["创建时间"] = DateTime.Now.ToLocalTime();
dt.Rows.Add(row);
}
Response.Write(DateTableToJson(dt));
// [
// {"编号":1,"姓名":"小王","年龄":18,"身高":1516,"视力":15659,"创建时间":"\/Date(1443362884990)\/"},
// {"编号":2,"姓名":"小王","年龄":18,"身高":1516,"视力":15659,"创建时间":"\/Date(1443362884990)\/"},
// {"编号":3,"姓名":"小王","年龄":18,"身高":1516,"视力":15659,"创建时间":"\/Date(1443362884990)\/"},
// {"编号":4,"姓名":"小王","年龄":18,"身高":1516,"视力":15659,"创建时间":"\/Date(1443362884990)\/"},
// {"编号":5,"姓名":"小王","年龄":18,"身高":1516,"视力":15659,"创建时间":"\/Date(1443362884990)\/"}
// ]
序列化各个类型成JSON XML实例的更多相关文章
- Python导出Excel为Lua/Json/Xml实例教程(三):终极需求
相关链接: Python导出Excel为Lua/Json/Xml实例教程(一):初识Python Python导出Excel为Lua/Json/Xml实例教程(二):xlrd初体验 Python导出E ...
- Python导出Excel为Lua/Json/Xml实例教程(二):xlrd初体验
Python导出Excel为Lua/Json/Xml实例教程(二):xlrd初体验 相关链接: Python导出Excel为Lua/Json/Xml实例教程(一):初识Python Python导出E ...
- Python导出Excel为Lua/Json/Xml实例教程(一):初识Python
Python导出Excel为Lua/Json/Xml实例教程(一):初识Python 相关链接: Python导出Excel为Lua/Json/Xml实例教程(一):初识Python Python导出 ...
- ajax 另外两种返回类型(json xml)
返回json类型(例子): <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http ...
- JSON.stringify实例应用—将对象转换成JSON类型进行AJAX异步传值
在上一篇中,对JSON.stringify()方法有了初步的认识,并且做了一些简单的例子.本篇将进一步将JSON.stringify用在复杂些的实例中,例如如下需求: 在进jQuery AJAX异步传 ...
- ASP.NET MVC WebApi 返回数据类型序列化控制(json,xml) 用javascript在客户端删除某一个cookie键值对 input点击链接另一个页面,各种操作。 C# 往线程里传参数的方法总结 TCP/IP 协议 用C#+Selenium+ChromeDriver 生成我的咕咚跑步路线地图 (转)值得学习百度开源70+项目
ASP.NET MVC WebApi 返回数据类型序列化控制(json,xml) 我们都知道在使用WebApi的时候Controller会自动将Action的返回值自动进行各种序列化处理(序列化为 ...
- JSON格式序列化与反序列化(List、XML)
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.I ...
- 如何在ASP.NET中用C#将XML转换成JSON
本文旨在介绍如果通过C#将获取到的XML文档转换成对应的JSON格式字符串,然后将其输出到页面前端,以供JavaScript代码解析使用.或许你可以直接利用JavaScript代码通过Ajax的方式来 ...
- XML和JSON 序列化以及DataTable转JSON
using System.IO; using System.Text; using System.Xml.Serialization; using System.Xml; using System.R ...
随机推荐
- July 31st, Week 32nd Sunday, 2016
If you wept for the missing sunset, you would miss all the shining stars. 如果你为错过夕阳而哭泣,那你有可能也会错过灿烂的星空 ...
- MVC自带的校验
一.添加控制器Home和Model数据 public class UserInfo { public int Id { get; set; } [Display(Name="用户名" ...
- 原始套接字(SOCK_RAW)
本文转载:http://www.cnblogs.com/duzouzhe/archive/2009/06/19/1506699.html,在此感谢 原始套接字(SOCK_RAW). 应用原始套接字,我 ...
- git_2-linux
在linux下搭建git环境1.创建Github账号,https://github.com2.Linux创建SSH密钥: ssh-keygen ##一直默认就可以了 3.将公钥加入到Github账户 ...
- Jquery和雅虎的YQL服务实现天气预报功能!
可以直接使用http://www.tianqi.com/plugin/#tjdm定制天气 很多外部网站都有天气预报功能,对于很多企业内部的门户也需要有天气预报功能,但实现天气预报的功能和方式确有所差异 ...
- 更改Windows控制台默认缓冲区行数和宽度
Windows控制台窗口默认的显示行数很少, 以至于有时候要显示很多东西的时候, 总是导致前面的内容丢失. 很不爽. 于是GG了下, 在StackOverflow上找到了答案~~~ 设置方式: 1. ...
- 【现代程序设计】homework-03
Homework-03 队员: 11061193 薛亚杰 11061192 周敏轩 11061190 李孟 0 材料阅读 我们三个人将以下材料仔细阅读,觉得十分受益.下面是我们的总结和分享: 1 ...
- Gym 100637F F. The Pool for Lucky Ones
F. The Pool for Lucky Ones Time Limit: 20 Sec Memory Limit: 256 MB 题目连接 http://codeforces.com/gym/10 ...
- "回复 集赞" 抢 《Apple Watch 苹果开发教程》活动开始了!!!
"回复 集赞" 抢 <Apple Watch 苹果开发教程>活动开始了!!! 活动方式: 回复积赞 第1步:回复该帖 扫描二维码进入活动现场 第2步:召集你的小 ...
- ZOJ2332 Gems(最大流)
题目大概说,alsomagic有宝石,宝石有颜色和形状两个属性:他有一种法力可以将某些颜色形状的宝石转化成另一种颜色形状的宝石:他的女朋友对各个颜色都有一定的容忍数量,而他自己也对各个形状都有一定的容 ...