C# 关于使用JavaScriptSerializer 序列化与返序列化的操作

//开始解析 

//引用

//using System.Web.Script.Serialization;

JavaScriptSerializer js = new JavaScriptSerializer();
Dictionary<string, Object> oList = js.DeserializeObject("Json字符串") as Dictionary<string, Object>;
if (oList != null)
{
string strRet = "";
if (oList.ContainsKey("ret"))
{
strRet = oList["ret"].ToString();
}
if (strRet == "0")
{

Dictionary<string, object> oDataList = oList["data"] as Dictionary<string, Object>;
object[] oItem_listData = oDataList["item_list"] as object[];

if (oItem_listData != null)
{
System.Linq.IOrderedEnumerable<object> q = from a in oItem_listData orderby ((Dictionary<string, object>)a)["字段"].ToString() descending select a;//排序的

foreach (var oObj in q)
{
Dictionary<string, object> oCountriesDataList = oObj as Dictionary<string, object>;

//匹配到Json串的内容 同过实体依次赋值

if (oCountriesDataList .ContainsKey("类型"))
{
类型= oCountriesDataList ["类型"].ToString();
}

if (oCountriesDataList .ContainsKey("内容"))
{
内容= oCountriesDataList ["内容"].ToString();
}

//如果 内容里面  还有下一级别的话 则继续往下面解析 Json

object[] DateList = oCountriesDataList ["内容"] as object[];
if (DateList != null)
{
System.Linq.IOrderedEnumerable<object> qp = from a in DateList  orderby ((Dictionary<string, object>)a)["时间"].ToString() ascending select a;//时间排序

foreach (var oObj1 in qp)
{

Dictionary<string, object> LowesDataList = oObj1 as Dictionary<string, object>;//数据集合

//得到里面 对用的 内容

DateTime Date = DateTime.Parse(LowesDataList ["时间"].ToString()); //日期

//你的类 继续赋值 add

}
}
}
}

原文地址:https://www.cnblogs.com/goodluckily/p/11027475.html

时间: 2024-11-06 19:40:09

C# 关于使用JavaScriptSerializer 序列化与返序列化的操作的相关文章

c#如何使用MemoryStream和BinaryFormatter进行对象的序列化和返序列化

1 下面是我写的一个序列化的类 public static class ObjSerialize { /// <summary> /// 将对象数组obj序列化,内存中的缓冲区的数据序列化 /// </summary> /// <param name="obj"></param> /// <returns></returns> public static byte[] Serialize(object obj) {

Object序列化与返序列化

package com.mepu; import org.junit.Test; import java.io.*; /** * @author: 艾康 * @date: 2020/1/1 14:29 * @description: TODO * @modifiedBy: * @version: 1.0 * 对象流的序列化与反序列化 */ public class ObjectIOTest { /* 序列化 */ @Test public void test1(){ ObjectOutputSt

IOSerialize,xml和json,soap序列化器,二进制序列化器,XML序列化器,文件 检查、新增、复制、移动、删除

1 文件夹/文件 检查.新增.复制.移动.删除,2 文件读写,记录文本日志/读取配置文件3 三种序列化器4 xml和json1.文件夹/文件 检查.新增.复制.移动.删除,2 文件读写,记录文本日志/读取配置文件 using System.IO; /// <summary> /// 配置绝对路径 /// </summary> private static string LogPath = ConfigurationManager.AppSettings["LogPath&

C#中的二进制序列化和Json序列化

序列化就是把一个对象变成流的形式,方便传输和还原.小弟不才,总结下对二进制序列化和Json序列化的使用: 1.首先,二进制序列化(BinaryFormatter)要求要序列化的类必须是可序列化的(即在类定义的前面加Serializable关键字),而且它的父类类型也必须是可序列化的,经过查看发现,Dotnet中很多类型和结构都有这个标记:而Json序列化不用写标记: 2.如果类中某些属性不希望被二进制序列化,加NonSerialized关键字即可,而要二进制序列化的属性的类型必须是可序列化的数据

java编解码技术,json序列化与二进制序列化

1.何为json序列化与二进制序列化 通常我们在程序中采用的以json为传输,将json转为对象的就是json序列化了.而二进制序列化通常是我们将数据转换为二进制进行传输,然后在进行各类转换操作 2.适用场景 小编觉得当数据采用json传输的时候,适用与web与控制层的转换,前端js对json的支持较好,而程序内部系统与系统之间采用二进制序列化编码形式进行编码进行数据传输,这样可提高数据传输效率 3.优缺点 json序列化有点就是通俗易懂,常用,易于与前端交互,缺点就是没有二进制序列化后的数据传

Atitit php序列化&#160;php的serialize序列化和json序列化

Atitit php序列化 php的serialize序列化和json序列化 PHP 对不同类型的数据用不同的字母进行标示,Yahoo 开发网站提供的Using Serialized PHP withYahoo! Web Services 一文中给出所有的字母标示及其含义:a - arrayb - booleand - doublei - integero - common objectr - references - stringC - custom objectO - classN - nu

可序列化和自定义序列化

序列化技术的主要两个目的是:持久化存储.按值封送. .NET Framework支持三种序列化器:Binary.XML.SOAP.他们各有优缺点,分别列如下 1. Binary序列化是完全保真的,因为除非特殊声明为NonSerialized,那么所有成员(包括私有的和公有的)都会被序列化.该序列化器的结果体积比较小,是二进制格式存储的.所以不便于平台复用. 2. XML序列化只序列化公有成员.它的结果是标准的XML文档,有利于跨平台. 3. SOAP序列化其实可以说是XML序列化的一种,但它的结

[LeetCode] Serialize and Deserialize BST 二叉搜索树的序列化和去序列化

Serialization is the process of converting a data structure or object into a sequence of bits so that it can be stored in a file or memory buffer, or transmitted across a network connection link to be reconstructed later in the same or another comput

[LeetCode] Serialize and Deserialize Binary Tree 二叉树的序列化和去序列化

Serialization is the process of converting a data structure or object into a sequence of bits so that it can be stored in a file or memory buffer, or transmitted across a network connection link to be reconstructed later in the same or another comput