[英]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.