导读: asp解析JSON(共3篇)ASP 发送及处理JSON格式请求ASP 发送及处理JSON格式请求JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,易于阅读和编写,同时也易于解析和生成。JSON基于JavaScript的一个子集,采用完全独立于语言的文本格式,但是也使用了类似于C语言...
本文是中国招生考试网(www.chinazhaokao.com)成考报名频道为大家整理的《asp解析JSON》,供大家学习参考。
ASP 发送及处理JSON格式请求
asp解析JSON 第一篇
ASP 发送及处理JSON格式请求
JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,易于阅读和编写,同时也易于解析和生成。JSON基于JavaScript的一个子集,采用完全独立于语言的文本格式,但是也使用了类似于C语言家族的习惯(包括C,C++,C#,Java,JavaScript,Perl,Python等),这些特性使JSON成为理想的数据交换语言。
可以使用eval()方法调用JavaScript编译器把JSON文本转变成对象。因为JSON是JavaScript的一个确切子集,编译器可以正确地解析JSON文本,然后生成一个对象结构。例如,下面的语句即使用eval()方法将JSON文本friend转换成对象j将JSON文本转换为对象后,便可以使用索引来获取相应的值。例如,下面的
asp.netJson序列化
asp解析JSON 第二篇
ASP.net中用JSON序列化对象
过去我们使用JSON.net序列化一个对象,在asp.net3.5中已经集成了序列化对象为json的方法。
我们分别针对System.Runtime.Serialization.Json和System.Web.Script.Serialization两个命名空间下的不同方法进行序列化和反序列化。
第一种方法:
System.Runtime.Serialization.Json
(在vs2008添加引用System.Runtime.Serialization 如果在非WEB项目下还需要引用System.ServiceModel.Web)
JosnHelper.CS 代码如下:
1 public class JsonHelper
2 {
3 /// <summary>
4 /// 生成Json格式
5 /// </summary>
6 /// <typeparam name="T"></typeparam>
7 /// <param name="obj"></param>
8 /// <returns></returns>
9 public static string GetJson<T>(T obj)
10 {
11 DataContractJsonSerializer json = new DataContractJsonSerializer(obj.GetType());
12 using (MemoryStream stream = new MemoryStream()) 13 {
14 json.WriteObject(stream, obj);
15 string szJson = Encoding.UTF8.GetString(stream.ToArray()); return szJson;
16 }
17 }
18 /// <summary>
19 ///
获取Json
的
Model
20 /// </summary>
21 /// <typeparam name="T"></typeparam>
22 /// <param name="szJson"></param>
23 /// <returns></returns>
24 public static T ParseFromJson<T>(string szJson) 25 {
26 T obj = Activator.CreateInstance<T>();
27 using (MemoryStream ms = new MemoryStream(Encoding.UTF
8.GetBytes(szJson)))
28 {
29 DataContractJsonSerializer serializer = new DataContractJsonSerializer(obj.GetType());
30 return (T)serializer.ReadObject(ms);
31 }
32 }
33 }
下面为具体用法
声明一个需要输出JSON属性的类
1 public class topMenu
2 {
3 public string id { get; set; }
4 public string title { get; set; }
5
public
string defaulturl {
get;
set; }
6 }
本例使它循环三次 利用上面GetJson方法序列化
1 topMenu t_menu = new topMenu()
2 {
3 id = "1",
4 title = "全局",
5 defaulturl = "123456"
6 };
7
8 List<topMenu> l_topmenu = new List<topMenu>();
9 for (int i = 0; i < 3; i++)
10 {
11 l_topmenu.Add(t_menu);
12 }
13 Response.Write(JsonHelper.GetJson<List<topMenu>>(l_topmenu));
输出结果为:
[{"defaulturl":"123456","id":"1","title":"【asp解析JSON】
全局"},
{"defaulturl":"123456","id":"1","title":"全局"},
{"defaulturl":"123456","id":"1","title":"全局"}]
下面利用上面ParseFromJson方法读取Json【asp解析JSON】
1 string szJson = @"{""id"":""1"",""title"":""全局"",""defaulturl"":""123456""} "; 2 topMenu t_menu2 = JsonHelper.ParseFromJson<topMenu>(szJson); 3 Response.Write(t_menu2.title);
输出结果为:全局
第二种方法
System.Web.Script.Serialization (引用System.Web.Extensions.dll)
还是用到上面方法中JSON属性的类
下面和上面方法中一样。循环三次就。序列化方式不一样【asp解析JSON】
1 topMenu t_menu = new topMenu()
2 {
3 id = "1",
4 title = "全局",
5 defaulturl = "123456"
6 };
7
8 List<topMenu> l_topmenu = new List<topMenu>(); 9
10 for (int i = 0; i < 3; i++)
11 {
12 l_topmenu.Add(t_menu);
13 }
下面用这种方式输出:
java中解析json的三种方式
asp解析JSON 第三篇
//第一种
public void jsonTx() {
String json = "{'status':200,'message':'查询成功','data':[{'id':1,'name':'name1','describe':'
第一条数据'}]}";
JSONObject data = new JSONObject(json);
int status = data.optInt("status");
JSONArray data1 = data.getJSONArray("data");
if (status==200) {
for(int i=0;i<data1.length();i++){
String s = data1.getString(i);
System.out.println(s);
JSONObject data2 = JSONObject.fromObject(s);
System.out.println(data2.getString("id"));
System.out.println(data2.getString("name"));
System.out.println(data2.getString("describe"));
}
}else if(status==500) {
String msg = data.getString("message");
System.out.println(msg);
}
}
//第二种
public void getJson() {
String json =
"{'response':{'data':[{'address':'北京','province':'海淀','district':'西三旗','city':'地铁'}]},'status':'ok'}";
JSONObject jsonObject = JSONObject.fromObject(json);
String status = jsonObject.getString("status");
// System.out.println(str);
String response = jsonObject.getString("response");
JSONObject jsonObject2 = JSONObject.fromObject(response);
JSONArray data = jsonObject2.getJSONArray("data");
for(int i=0;i<data.length();i++){
String s = data.getString(i);
JSONObject data2 = JSONObject.fromObject(s);
System.out.println(data2.getString("address"));
System.out.println(data2.getString("province"));
System.out.println(data2.getString("district"));
System.out.println(data2.getString("city"));
}
}
//第三种(只获取json里面数据)
public static void main(String[] args) {
String json =
"{\"response\":{\"data\":[{\"address\":\"北京\",\"province\":\"海淀\",\"district\":\"三环\",\"city\":\"桥\"}]},\"status\":\"ok\"}";
String str[] =
json.replaceAll(".*\"address\":\"(.*?)\".*\"province\":\"(.*?)\",.*\"district\":\"(.*?)\",.*\"city\":\"(.*?)\".*",
"$2,$4,$3,$1").split(",");
for (String s : str) {
System.out.println(s);
}
}
最新推荐成考报名
更多- 歇后语_歇后语大全_歇后语大全及答案_爆笑歇后语
- 大学排名_大学排名2018排行_大学查询_中国大学名单
- 成语大全_四字成语_在线成语词典_成语查询
- 成语接龙大全查询,成语接龙游戏,在线成语接龙
- 全国安全教育平台入口_学校安全教育平台
- 社保查询网-社会保障卡查询,社会保险查询,社保网上查询
- 汉字简体繁体转换_在线繁体字转换工具
- 数字大写转换|人民币金额(数字)大小写转换在线工具
- 年龄计算器实际岁数计算器 - 周岁虚岁计算器
- 产假计算器-算产假计算器在线2018-2018年产假自动计算器
- 预产期计算器-怀孕孕期计算器-怀孕天数计算
- 中国文库网-教育资源网-范文文章
- 邮编区号查询网
- 致富商机网-致富点子_创业项目
- 创业项目网--最热门的投资项目
- 中国邮政邮编查询号码
- 电话区号查询
- 全国车牌号归属地大全
- 在线网速测试|宽带速度测试
- 人民币汇率查询
- ●理财有没有风险 金融互联网理财
- ●qq网名
- ●2016最新伤感说说
- ●谈笑风生造句
- ●读书的名言
- ●资产清查报告
- ●贫困户申请书
- ●财务自查报告
- ●离婚起诉书
- ●赞美老师的演讲稿
- ●车间管理
- ●车辆购置税
- ●跨越百年的美丽读后感
- ●跟女友离别的话
- ●超市管理制度
- ●起诉状范本
- ●赠别诗大全
- ●描写夏天的句子
- ●描写友谊的诗句
- ●迁户口申请书
- ●转正申请表范本
- ●这个杀手不太冷台词
- ●运动会稿子精选
- ●那么那么造句
- ●送给男朋友的情话大全
- ●钳工实训报告
- ●霸气说说大全
- ●骂人不带脏字的
- ●幼儿园见习个人总结
- ●追女孩子的短信