C#处理Json的另外一种方式成功实践
作者在原文中说明了通过C#调用Javascript来解析Json字符串的方法。代码如下:
代码如下:
using Microsoft.JScript;
using Microsoft.Vsa;
using Microsoft.JScript.Vsa;
public static Dictionary<string, string> GetMyValue(string jsonSource, string key1, string key2)
{
Dictionary<string, string> dic = new Dictionary<string, string>();
string jsonStr = "function handleJson() {var j=" + jsonSource + ";var arr1=new Array();var arr2=new Array();for(var " + key2 + " in j." + key1 + ") arr1.push(" + key2 + "); return arr1;} handleJson(); ";
object o = Eval.JScriptEvaluate(jsonStr, VsaEngine.CreateEngine());
ArrayObject arr = (ArrayObject)o;
for (var i = 0; i <= (int)arr.length - 1; i++)
{
dic.Add(arr[i].ToString(), arr[i].ToString());
}
return dic;
}
大致就是这个样子,通过C#调用js,用Js解析Json,并将返回值转换为C#数组。
相关推荐
-
c#版json数据解析示例分享
JSON与XML的比较◆可读性JSON和XML的可读性相比较而言,由于XML提供辅助的标签,更加适合人阅读和理解.◆文件大小与传输XML允许使用方便的标签,所以文件尺寸是要比JSON大的.而且JSON源于Javascript,所以天生的主战场是Javascript与网络,在这里,JSON有着XML无法赶超的优势. JSON语法1. JSON 语法是 JavaScript 对象表示法语法的子集. 数据在名称/值对中:名称是字符串,使用双引号表示.值可以是:数字(整数或浮点数),字符串(在双引号中)
-
c#处理3种json数据的实例
网络中数据传输经常是xml或者json,现在做的一个项目之前调其他系统接口都是返回的xml格式,刚刚遇到一个返回json格式数据的接口,通过例子由易到难总结一下处理过程,希望能帮到和我一样开始不会的朋友. 一.C#处理简单json数据 json数据: 复制代码 代码如下: {"result":"0","res_info":"ok","queryorder_info":"info"} 我这
-
自定义实现Json字符串向C#对象转变的方法
这里使用Atrribute的方式实现了Json字符串向C#对象的转变.因为功能局限,此版本只是针对于Json字符串,如"response":"Hello","id":21231513,"result":100,"msg":"OK."; 而不是Json数组.这里的Atrribute是作用在属性上,像NHibernate中的Atrribute一样,是在运行时通过反射来获取这个属性对应于Jso
-
C#解析json文件的实现代码
C# 解析 json JSON(全称为JavaScript Object Notation) 是一种轻量级的数据交换格式.它是基于JavaScript语法标准的一个子集. JSON采用完全独立于语言的文本格式,可以很容易在各种网络.平台和程序之间传输.JSON的语法很简单,易于人阅读和编写,同时也易于机器解析和生成. JSON与XML的比较 ◆可读性 JSON和XML的可读性相比较而言,由于XML提供辅助的标签,更加适合人阅读和理解.◆文件大小与传输 XML允许使用方便的标签,所以文件尺寸是要比
-
asp.net(C#)解析Json的类代码
本次工作内容是要将以下数据解析成.Net可以使用的数据,返回的数据除了header,其他的都是可变的,也就是说结构不是固定的.完全由用户选择,所以选择了生成DataTable. Json数据格式如下: 复制代码 代码如下: {"dataSet":{ "header":{ "returnCode":"0", "errorInfo":"HTTP请求错误", "version&quo
-
C#实现简单的JSON序列化功能代码实例
好久没有做web了,JSON目前比较流行,闲得没事,所以动手试试将对象序列化为JSON字符(尽管DotNet Framework已经有现成的库,也有比较好的第三方开源库),而且只是实现了处理简单的类型,并且DateTime处理的也不专业,有兴趣的筒子可以扩展,代码比较简单,反序列化木有实现:( ,直接贴代码吧,都有注释了,所以废话不多说 :) 复制代码 代码如下: 测试类/// <summary> /// Nested class of Person. /// </summ
-
C#实现json的序列化和反序列化实例代码
在做asp.net和unity进行http通信的时候,当unity客户端发出表单请求的时候,我要将他要请求的数据以json的格式返回给客户端,让客户端来解析.服务器端这一块就涉及到json的序列化和反序列化的问题. 两种方法都有例子,第一种是用泛型集合来存储的对象,然后将集合序列化一下:第二种是直接序列化的一个对象 复制代码 代码如下: using System;using System.Collections.Generic;using System.Web.Script.Serializat
-
c#操作json示例分享
1..NET对JSON的支持介绍 (1)操作Json的DLL介绍 .NET自身有System.Runtime.Serialization.dll与System.Web.Extensions.dll,使用这两个DLL可以把对象序列化和反序列化成Json数据.也可以使用第三方的Newtonsoft.Json.dll来操作Json数据,使用它会更方便的操作Json数据,其功能也跟强一些. (2)使用System.Web.Extensions.dll的限制 要使用System.Web.Extension
-
C#解析JSON实例
本文以实例形式讲述了C#解析JSON的方法,C#封装了对XML和JSON解析的类库,使用相当方便!具体用法如下: 1.主要用到的类: 主要用到了JavaScriptSerializer类,该类在System.Web.Script.Serialization命名空间(在System.Web.Extensions.dll 中),需要把.NET版本修改为 .NET Framework 4(默认是.NET Framework 4 Client Profile)才能在Add Reference的 .NET
-
C#简单快速的json组件fastJSON使用介绍
JSON数据格式简洁,用于数据的持久化和对象传输很实用.最近在做一个Razor代码生成器,需要把数据库的表和列的信息修改后保存下来,想到用JSON序列化对象并保存,需要时再反序列化成对象会简单一些.codeplex上发现了fastJSON项目,好像很不错的样子.这里是作者做的性能测试: 代码调用 复制代码 代码如下: namespace test { class Program { static void Main(string[] args) { var zoo1 = new zoo(); z
-
C#实现任意数据类型转成json格式输出
直接贴代码: 复制代码 代码如下: /// List转成json /// </summary> /// <typeparam name="T"></typeparam> /// <param name="jsonName"></param> /// <param name="list"></param> /// <returns></
随机推荐
- PHP中过滤常用标签的正则表达式
- php使用curl下载指定大小的文件实例代码
- PHP中date与gmdate的区别及默认时区设置
- xss防御之php利用httponly防xss攻击
- Android用PopupWindow实现自定义overflow
- Javascript 拖拽雏形(逐行分析代码,让你轻松了拖拽的原理)
- tel.xls.vbs xls专杀工具
- SQL的SUBSTR()函数使用介绍
- windows下使用cwRsync定期备份网站(服务器文件同步)
- Java函数式编程(七):MapReduce
- SSH框架网上商城项目第5战之商品类别级联查询和分页功能
- 在ASP.NET 2.0中操作数据之五十三:在Data Web控件显示二进制数据
- C#通过xpath查找xml指定元素的方法
- PHP中的string类型使用说明
- Android实现顶部底部双导航界面功能
- 正确认识宽带路由器的主要参数
- 过滤功能对路由器性能的影响
- Windows2000硬盘操作小技巧
- 微信小程序开发实现消息推送
- 浅入深出Vue之自动化路由