App_Code/common2/common/JSon.cs

(开头部分) 4KB

这里只显示每个文件的开头 60 行。登录后可以解锁完整代码。

using System;
using System.Collections;
using System.Text;
using System.Text.RegularExpressions;
using System.Data;

namespace RM.Common
{
    public sealed class JSON
    {
        #region SetJSON:将JSON字符串反序列化成HashTable
        public static Hashtable SetJSON(string strJSON)
        {
            Hashtable hTable = new Hashtable();
            if (strJSON.IndexOf('{') == 0 && strJSON.LastIndexOf('}') == strJSON.Length - 1)
            {
                string[] arr = strJSON.Substring(1, strJSON.Length - 2).Split(new string[] { ",\"" }, StringSplitOptions.None);
                for (int i = 0; i < arr.Length; i++)
                {
                    string[] val = arr[i].Split(new string[] { "\":" }, StringSplitOptions.None);
                    object objVal = val[1].Trim('\"');
                    string valName = val[0].Trim('\"');
                    if (OperateText.IsBoolean(val[1]))
                    {
                        hTable.Add(valName, Convert.ToBoolean(val[1]));
                    }
                    else if (OperateText.IsNumber(val[1]))
                    {
                        hTable.Add(valName, Convert.ToInt32(val[1]));
                    }
                    else if (OperateText.IsDecimal(val[1]))
                    {
                        hTable.Add(valName, Convert.ToDecimal(val[1]));
                    }
                    else if (objVal.ToString().Trim() != "" && OperateText.IsDateTime(objVal.ToString()))
                    {
                        hTable.Add(valName, Convert.ToDateTime(objVal));
                    }
                    else
                    {
                        hTable.Add(valName, objVal);
                    }
                }
            }
            return hTable;
        }
        #endregion

        #region GetJSON:将DataTable格式化成JSON
        public static string GetJSON(DataTable DT)
        {
            StringBuilder sb = new StringBuilder();
            sb.Append("{Table:{Rows:[");
            if (DT != null && DT.Rows.Count > 0)
            {
                foreach (DataRow row in DT.Rows)
                {
                    sb.Append("{");
                    for (int i = 0; i < DT.Columns.Count; i++)
                    {
后面还有 67 行代码,解锁后查看完整代码

24 小时内免费解锁 3 个项目,之后 1 算力/个。 规则说明

AI 解读 AI

登录后可用,每次 10 算力,解读结果公开显示在下面。

还没有人解读过这个文件。