c# – 如何使用System.Runtime.Serialization.Json解析此String
发布时间:2020-12-16 00:07:24 所属栏目:百科 来源:网络整理
导读:你能帮我看看如何使用System.Runtime.Serialization.Json(而不是Json.NET)获取这个tring to array中每本书的信息: { "books": [ {"name":"Book 1","orig":"Author 1","date":2009,"lang":"en"},{"name":"Book 2","orig":"Author 2","date":2012,"lang":"fr"
你能帮我看看如何使用System.Runtime.Serialization.Json(而不是Json.NET)获取这个tring to array中每本书的信息:
{ "books": [ {"name":"Book 1","orig":"Author 1","date":2009,"lang":"en"},{"name":"Book 2","orig":"Author 2","date":2012,"lang":"fr"} ],"src":"lib","id":212 } 解决方法
这是一个我掀起的快速样本似乎有效:
using System; using System.Collections.Generic; using System.IO; using System.Runtime.Serialization; using System.Runtime.Serialization.Json; class Test { static void Main() { using (Stream stream = File.OpenRead("test.json")) { var serializer = new DataContractJsonSerializer(typeof(Library)); Library library = (Library) serializer.ReadObject(stream); Console.WriteLine(library.Books[0].Name); } } } [DataContract] class Book { [DataMember(Name="name")] public string Name { get; set; } [DataMember(Name="orig")] public string Orig { get; set; } [DataMember(Name="date")] public string Date { get; set; } [DataMember(Name="lang")] public string Lang { get; set; } } [DataContract] class Library { [DataMember(Name="books")] public IList<Book> Books { get; set; } [DataMember(Name="src")] public string Src { get; set; } [DataMember(Name="id")] public string Id { get; set; } } 我相信你可以调整很多其他选项,但这至少应该让你开始. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |