[英]Deserializing json array
我想反序列化一个json字符串,但不知怎的,我没有得到正确的值:(这是输入json字符串
{
"files":[
{"path":"/c/asd/input.txt","size":13},
{"path":"/c/asd/input.txt","size":136},
{"path":"/c/asd/input.txt","size":483},
{"path":"/c/asd/input.txt","size":136}
],
"md5sum":"bbd88df7b2d8c95f922ebf0d718b5687"
}
为它创建了一个类
public class Files
{
public string path { get; set; }
public int size { get; set; }
}
public class myObject
{
public List<Files> files { get; set; }
public string md5sum { get; set; }
}
并尝试使用JavaScriptSerializer:
var jss = new JavaScriptSerializer();
List<myObject> obj = s.Deserialize<List<myObject>>(File.ReadAllText(json));
我究竟做错了什么? obj count为零。 我只需要使用路径值。
这是一个根对象,而不是列表。 尝试:
var obj = s.Deserialize<myObject>(File.ReadAllText(json));
另外,我假设这里的json
是文件的路径,而不是json本身。
尝试
jss.Deserialize<myObject>(File.ReadAllText(json));
因为您尝试反序列化集合(List),但s对象不是集合。
您的输入json不是list.Change Deserialize<List<myObject>
以Deserialize<myObject>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.