当前位置: 首页 > 编程语言 > C#

如何使用JSON.net解析JSON文件Share

时间:2023-04-11 00:17:15 C#

如何使用JSON.net解析JSON文件我有这段代码可以从我的文件中读取StreamReaderre=newStreamReader("artists.json");JsonTextReader阅读器=newJsonTextReader(re);但是我现在如何从阅读器解析它以便我可以从文件中搜索数据?我试过阅读文档,但使用Newtonsoft.Json找不到任何内容;//..JsonSerializerse=newJsonSerializer();objectparsedData=se.Deserialize(reader);回应“关于如何实施的一些细节会有所帮助。–使用Newtonsoft.Json的aknatn;使用系统;使用System.Collections.Generic;使用System.IO;使用系统文本;publicclassProgram{publicstaticvoidMain(){//JSON={"Property1":"as","CollectionProperty":[{"prop1":"1","prop2":"2","prop3":"3"}]}//这个Top部分只是为了构建一个流//-如果你正在访问一个文件,则不需要这样做stringJSON="{"Property1":"SomePropName","CollectionProperty":"+"[{"prop1":"1","prop2":"2","prop3":"3"}]}";byte[]byteArray=Encoding.UTF8.GetBytes(JSON);//byte[]byteArray=Encoding.ASCII.GetBytes(内容);MemoryStreamstream=newMemoryStream(byteArray);//将流转换为字符串JsonSerializerse=newJsonSerializer();StreamReaderre=newStreamReader(stream);JsonTextReader阅读器=newJsonTextReader(re);varDeserializedObject=se.Deserialize(读者);Console.WriteLine(DeserializeObject.Property1);//“...所以我可以从文件中搜索数据?”//这取决于你和你如何想处理它,但你现在有JSON//反序列化并存储在内存中。'Howtosearch'dependsonobjectsclass//此外,原始问题说他有JSON。我建议使用//json2csharp.com/或jsonutils.com///检索类以便将其反序列化为您的对象。//注意1:您不必总是强制转换它//-我只是总是尝试是否可以以及何时可以//注意2:因为您使用的是StreamReader,//这将说明大型JSON对象}publicclassCollections{publicListCollectionProperty=newList();公共字符串属性1;}publicclassCollectionProperty{publicstringprop1{get;放;}publicstringprop2{得到;放;}publicstringprop3{得到;放;如果你想把它加载成JObject或者动态类型(而不是反序列化成.NET类型),你可以使用JObject.Load方法上面是C#学习教程:如何使用JSON.net来解析JSON文件分享的全部内容。如果对大家有用,需要进一步了解C#学习教程,希望大家多多关注——using(varsr=newStreamReader("artists.json")){varreader=newJsonTextReader(sr);varjObject=JObject.Load(阅读器);//从JObject获取属性varsomeValue=jObject.GetValue("someProperty").Value();//JObject可以转换为动态vardObject=(dynamic)jObject;someValue=(string)dObject.someProperty;}本文收集自网络,不代表立场。如涉及侵权,请点击右侧联系管理员删除。如有转载请注明出处: