`

C# 解析JSON

 
阅读更多

需求:如以下JSON字符串

[{"Name": "首  页", "LinkAddr": "", "Items": [{ "Name": "首页一", "LinkAddr": "http://www.baidu.com"}]},{"Name": "公司简介", "LinkAddr": "", "Items": [{ "Name": "公司简介一", "LinkAddr": "http://www.taobao.com" }, { "Name": "公司简介二", "LinkAddr": "http://www.cubes.com.cn"}]},{"Name": "翻译园地", "LinkAddr": ""},{"Name": "学员风采", "LinkAddr": ""},{"Name": "下载中心", "LinkAddr": ""},{"Name": "咨询留言", "LinkAddr": ""},{"Name": "乘车路线", "LinkAddr": ""}]

 

定义实体对象

 

[DataContract]
public class DataItemInfo
{
    [DataMember]
    public string Name { get; set; }

    [DataMember]
    public string LinkAddr { get; set; }

    [DataMember]
    public List<DataItemInfo> Items { get; set; }
}

 

如果将以上字符串转化为实体对象,或是将实体对象转化为以上的字符串

 

添加辅助类:

// using System.Runtime.Serialization.Json;

public static class JSON
{
    public static List<T> ToList<T>(string jsonString)
    {
        using (var ms = new MemoryStream(Encoding.UTF8.GetBytes(jsonString)))
        {
            return (List<T>)new DataContractJsonSerializer(typeof(List<T>)).ReadObject(ms);
        }
    }

    public static string ToString(object jsonObject)
    {
        using (var ms = new MemoryStream())
        {
            new DataContractJsonSerializer(jsonObject.GetType()).WriteObject(ms, jsonObject);
            return Encoding.UTF8.GetString(ms.ToArray());
        }
    }
}

 

相应操作:

 

string JsonData = Request.QueryString["JsonData"];

// 将JSON字符串转化为实体对象
//List<DataItemInfo> listItem = JSON.ToList<DataItemInfo>(JsonData);

// 将实体对象转化为JSON字符串
//JsonData=JSON.ToString(listItem);

分享到:
评论

相关推荐

    C# 解析json格式数据为IList

    C#中解析JSON通常使用的是Json.NET库,这是一个非常流行且功能强大的开源库,可以方便地进行JSON序列化和反序列化。如果你还没有安装,可以通过NuGet包管理器添加Json.NET到你的项目中。 使用Json.NET解析JSON为...

    C#解析Json数据(.html)

    在提供的HTML文件"C# 解析JSON格式数据 - CSDN博客.html"中,可能包含了更详细的示例和解析技巧,配合"C# 解析JSON格式数据 - CSDN博客_files"中的资源,读者可以深入学习并实践C#解析JSON的各种方法。通过学习和...

    C#解析Json

    本篇文章将详细介绍四种C#解析JSON的方法。 首先,理解JSON的基本语法至关重要。JSON的数据结构主要由对象和数组构成。对象是以花括号{}包围的键值对集合,键必须是字符串,用双引号括起,值可以是各种数据类型,...

    C#解析JSON字符串类

    在.NET框架中,C#是一种常用的编程语言,用于构建各种应用程序。在现代Web开发中,JSON(JavaScript Object Notation)已成为数据...在JsonStrTest这个项目中,你可以找到更多关于C#解析JSON字符串的实际示例和用法。

    C#解析Json字符串.zip

    总之,C#解析JSON字符串主要依赖于Newtonsoft.Json库,它提供了丰富的API和灵活性,使得在C#中处理JSON变得简单而高效。无论是简单的对象转换,还是复杂的动态解析,都有对应的解决方案。理解并熟练掌握这些知识,...

    C#解析Json工具LitJson

    LitJson是C#编程语言中一个轻量级的Json解析库,主要用来处理Json格式的数据。Json(JavaScript Object Notation)是一种轻量级的数据交换格式,因其简洁和易于阅读及编写,同时也便于机器解析和生成,被广泛应用于...

    C#解析json的Newtonsoft.Json.dll各种.net版本

    在.NET开发领域,C#语言提供了多种方式来处理JSON数据,其中最受欢迎的库之一就是Newtonsoft.Json.dll。这个库由James Newton-King 开发,它为C#开发者提供了丰富的功能,便于序列化和反序列化JSON,使得JSON数据在...

    C#像java一样优雅的解析JSON数据

    C#的一个解析JSON的工具类,像java一样优雅的解析JSON数据,包含有JSONObject和JSONArray对象。 JSONObject json = new JSONObject(); json.Put("sex", "男"); json.Put("age", 123); json.Put("name", "张三"); ...

    C#对多级json解析

    首先,我们需要了解C#中用于解析JSON的库,最常用的是 Newtonsoft.Json,也被称为Json.NET。这是一个强大的JSON库,提供了丰富的功能,包括序列化、反序列化、JSON路径查询等。 解析JSON的基本步骤如下: 1. **...

    C#中Json 解析类库,使用dictionary 解析未知字段的对象

    总结来说,使用Json.NET库和Dictionary在C#中解析JSON是一种灵活且实用的方法,尤其适用于处理动态或未知结构的JSON数据。只需注意类型转换以及处理可能的异常,如找不到Key或类型不匹配。通过这种方式,你可以轻松...

    C#解析json用到的DLL

    标题"\"C#解析json用到的DLL\"\"指的是在C#项目中使用的动态链接库(DLL),这个DLL通常包含了解析JSON所需的类和方法。在.NET生态系统中,最常用的JSON库是Newtonsoft.Json,也被称为Json.NET。这是一个高效、灵活...

    C#解析Json字符串以及Unity里面使用的.dll文件

    总的来说,理解和掌握C#解析Json字符串以及在Unity中使用.dll文件的能力,对于提升Unity项目开发效率和实现复杂功能至关重要。在实际工作中,我们需要根据具体需求选择合适的Json序列化库和第三方.dll文件,确保它们...

    C#解析JSON实例.rar

    在提供的"C#解析JSON实例.rar"压缩包中,可能包含了一系列示例代码,演示了如何在C#环境中使用这两种方法处理JSON数据。通过学习这些实例,开发者可以更好地理解如何在实际项目中灵活运用JSON解析和生成技术。建议...

    c#如何解析Json

    总结,C#解析JSON既有内置的`System.Text.Json`,也有流行的Json.NET库。两者都有各自的优点和适用场景。对于简单需求,内置库可能已足够;而对于更复杂的场景,Json.NET提供了更强大的功能。开发者应根据项目需求...

    C#解析Json开源库-Newtonsoft.Json.zip

    标题"\"C#解析Json开源库-Newtonsoft.Json.zip\"\"暗示了我们关注的重点是使用Newtonsoft.Json库来解析JSON数据。这个库通过NuGet包管理器可以轻松安装到任何.NET项目中,包含的主要组件是Newtonsoft.Json.dll文件,...

    C# json格式解析,Json格式字符串与C#对象相互转换,类库+使用案例,注释详细

    /// 将Json字符串解析为C#中的对象 /// Json格式中的字符串值识别 /// 将Json字符串解析为Dictionary, dynamic&gt;对象。 /// 将Json字符串解析为dynamic[]对象。 /// Dictionary类型对象转换为Json格式字符串 /// C#...

    C#解析JSON

    C#解析JSON字符串的类,现成好用的插件已经很多,这个类比较简单,仅供参考。

    JSONObject解析json,C# asp.net JSON解析 com.force.json

    在本篇中,我们将深入探讨如何在C# ASP.NET环境中使用`com.force.json`库来解析JSON。 `com.force.json`是一个针对.NET平台的高性能JSON库,由Salesforce公司开发,它提供了快速且内存效率高的JSON解析和生成功能。...

    C# 解析JSON 附带思路

    本文将深入探讨如何使用C#来解析JSON,并提供一种简单的思路。 首先,C#中用于解析JSON的主要库是Newtonsoft.Json,也被称为Json.NET。这是一个非常强大且流行的第三方库,可以方便地进行JSON序列化和反序列化操作...

    C# 解析 JSON 打印日志类

    通过以上知识点的实现,我们可以创建一个功能强大的日志系统,不仅可以记录常规信息,还能解析JSON数据,适应各种应用场景。在实际开发中,这样的日志类能够极大地提高问题诊断的效率,提升软件的健壮性。

Global site tag (gtag.js) - Google Analytics