C# JSON 反序列化下面的JSON字符串要转为对象比较容易:JSON字符串:{"A":0,"B":1,"C":0,"D":3}[DataContract(Namespace = "XXX")]public class MyClass{[DataMember(Order = 1)]public int A { get; set; }[DataMember(Order = 2)]public int

来源:学生作业帮助网 编辑:作业帮 时间:2024/04/28 15:19:52
C# JSON 反序列化下面的JSON字符串要转为对象比较容易:JSON字符串:{

C# JSON 反序列化下面的JSON字符串要转为对象比较容易:JSON字符串:{"A":0,"B":1,"C":0,"D":3}[DataContract(Namespace = "XXX")]public class MyClass{[DataMember(Order = 1)]public int A { get; set; }[DataMember(Order = 2)]public int
C# JSON 反序列化
下面的JSON字符串要转为对象比较容易:
JSON字符串:{"A":0,"B":1,"C":0,"D":3}
[DataContract(Namespace = "XXX")]
public class MyClass
{
[DataMember(Order = 1)]
public int A { get; set; }
[DataMember(Order = 2)]
public int B { get; set; }
[DataMember(Order = 3)]
public int C { get; set; }
[DataMember(Order = 4)]
public int D { get; set; }
}
var ser = new DataContractJsonSerializer(typeof(MyClass));
var ms = new MemoryStream(Encoding.UTF8.GetBytes(JSON字符串));
MyClass myClass1 = (MyClass)ser.ReadObject(ms);
运用以上代码即可成功转换.
像下边这样的JSON字符串该如何转换
JSON字符串:{"112":0,"325":1,"109":4}
这样是不可取的:
[DataContract(Namespace = "XXX")]
public class MyClass
{
[DataMember(Order = 1)]
public int 112 { get; set; }
[DataMember(Order = 2)]
public int 325 { get; set; }
[DataMember(Order = 3)]
public int 109 { get; set; }
}
因为C#中变量不能以数字开头,而且类似"112":0这样的项不是固定不变的,数量也不固定.试过用SortedList,但不能成功.请有经验的赐教一下.
不固定的意思是说:这一次是"112":0下一次可能就是"113":0或"234243":0等等,无法预知会来个什么.
数量不固定的意思是说:例子中只给出了3个,但也可能是3万个.
个人凭经验觉得这应该是一个字典类,因为字典类可以用任何字符串做KEY,可以容纳任意数量的项.
原来还有JavaScriptSerializer这东西
JavaScriptSerializer能支持SortedList
能否再给我上一课,说一下DataContractJsonSerializer与JavaScriptSerializer有什么区别,在哪种情况下选择哪个比较合理,有在网上搜了一下,都是英文的,看不大懂...
---------------------------
感谢【depluin】的解答:
……
DataContractJsonSerializer 可以处理其中的键类型不是字符串的词典,而 JavascriptSerializer 则无法处理,在这一方面前者的功能更为强大.但后者与 JSON 的兼容性更好.
可惜百度知道没有分配分数的功能,只能将分数给与其中一个,

C# JSON 反序列化下面的JSON字符串要转为对象比较容易:JSON字符串:{"A":0,"B":1,"C":0,"D":3}[DataContract(Namespace = "XXX")]public class MyClass{[DataMember(Order = 1)]public int A { get; set; }[DataMember(Order = 2)]public int
不要用DataContract
var serialize = new JavaScriptSerializer();
var obj= serialize.Deserialize(str);
可以{"112":0,"325":1,"109":4}
str.Replace(",","},{");
"["+str+"]"
将Json对象转为HashTable再进行后序列化

(JSON) 序列化和反序列化, C# JSON 反序列化下面的JSON字符串要转为对象比较容易:JSON字符串:{A:0,B:1,C:0,D:3}[DataContract(Namespace = XXX)]public class MyClass{[DataMember(Order = 1)]public int A { get; set; }[DataMember(Order = 2)]public int JSON 序列化和反序列化是什么意思? JSON 序列化和反序列化是什么意思? 下面这段json数据求一段c#反序列化代码{ok:true,reason:,data:{buy:[{price:1.28,mineral:457},{price:1.27,mineral:18547},{price:1.26,mineral:12572},{price:1.25,mineral:21405},{price:1.24,mineral:5430} C# json反序列化我的字符串是:{[{Rolerightid:1,Roleid:1,Menuid:6,Rstatus:1},{Rolerightid:2,Roleid:1,Menuid:7,Rstatus:1}]} ,这个字符串里是两条数据,我想把这2条数据里的每个字段依次保存到数据库,我该怎么通过 JSON = JSON || C# 用Newtonsoft.Json 修改 添加 JSON如题 比如 现有一个JSON了.现在需要操作这个JSON比如 修改或添加新的键.比如有 {aa:111}现想添加 {bb:{cc:333}}这样的JSON到老的json里.结果是 {aa:111,bb:{ 饭 是什么字,它是什么编码的,我C#如何把它转换成汉字,我这个字是 json 返回出来的,大家有读取过 json返回过来汉字是类似这样的程序处理经验么?这个是什么码 我自己解决了:下面是我的 什么是JSON json是什么意思? 什么是JSON struts2如何返回json和处理json dto是什么,json是什么 struts2如何返回json 求 C# json 解析类 有数组应该怎样解析出来呢? json是什么json能用在桌面程序中吗 下面这个action,为什么JSONArray jsonlist = JSONArray.fromObject( ['json','is','easy'] );会异常呢 代码如下:package com.jackie.action;import java.util.ArrayList;import java.util.List;import net.sf.json.JSONArray;import net.sf.json