C# Json Helper类

1 篇文章 0 订阅

DataTable转JSON

  public static string ToJson(DataTable dt)
        {
            JavaScriptSerializer javaScriptSerializer = new JavaScriptSerializer();
            javaScriptSerializer.MaxJsonLength = Int32.MaxValue; //取得最大数值
            ArrayList arrayList = new ArrayList();
            foreach (DataRow dataRow in dt.Rows)
            {
                Dictionary<string, object> dictionary = new Dictionary<string, object>();  //实例化一个参数集合
                foreach (DataColumn dataColumn in dt.Columns)
                {
                    dictionary.Add(dataColumn.ColumnName, dataRow[dataColumn.ColumnName].ToString());
                }
                arrayList.Add(dictionary); //ArrayList集合中添加键值
            }

            return javaScriptSerializer.Serialize(arrayList);  //返回一个json字符串
        }




        //JsonConvert 需要引用Newtonsoft.Json
        public static string DataTableToJsonWithJsonNet(DataTable dt)
        {
            string JsonString = string.Empty;
            JsonString = JsonConvert.SerializeObject(dt);
            return JsonString;
        }



        public static string DataTableToJson(DataTable table)
        {
            var JsonString = new StringBuilder();
            if (table.Rows.Count > 0)
            {
                JsonString.Append("[");
                for (int i = 0; i < table.Rows.Count; i++)
                {
                    JsonString.Append("{");
                    for (int j = 0; j < table.Columns.Count; j++)
                    {
                        if (j < table.Columns.Count - 1)
                        {
                            JsonString.Append("\"" + table.Columns[j].ColumnName.ToString()
                       + "\":" + "\"" + table.Rows[i][j].ToString() + "\",");
                        }
                        else if (j == table.Columns.Count - 1)
                        {
                            JsonString.Append("\"" + table.Columns[j].ColumnName.ToString()
                         + "\":" + "\"" + table.Rows[i][j].ToString() + "\"");
                        }
                    }
                    if (i == table.Rows.Count - 1)
                    {
                        JsonString.Append("}");
                    }
                    else
                    {
                        JsonString.Append("},");
                    }
                }
                JsonString.Append("]");
            }
            return JsonString.ToString();
        }

Json转DataTable

 public static DataTable ToDataTable(  string json)
        {
            DataTable dataTable = new DataTable();  //实例化
            DataTable result;
            try
            {
                JavaScriptSerializer javaScriptSerializer = new JavaScriptSerializer();
                javaScriptSerializer.MaxJsonLength = Int32.MaxValue; //取得最大数值
                ArrayList arrayList = javaScriptSerializer.Deserialize<ArrayList>(json);
                if (arrayList.Count > 0)
                {
                    foreach (Dictionary<string, object> dictionary in arrayList)
                    {
                        if (dictionary.Keys.Count<string>() == 0)
                        {
                            result = dataTable;
                            return result;
                        }
                        if (dataTable.Columns.Count == 0)
                        {
                            foreach (string current in dictionary.Keys)
                            {
                                dataTable.Columns.Add(current, dictionary[current].GetType());
                            }
                        }
                        DataRow dataRow = dataTable.NewRow();
                        foreach (string current in dictionary.Keys)
                        {
                            dataRow[current] = dictionary[current];
                        }

                        dataTable.Rows.Add(dataRow); //循环添加行到DataTable中
                    }
                }
            }
            catch (Exception ex)
            {

            }
            result = dataTable;
            return result;
        }

Json对象遍历  //需要引用 Newtonsoft.Json、Newtonsoft.Json.Linq  

   JObject jObject = JObject.Parse(conditionStr);

            foreach (JProperty jProperty in jObject.Properties()) 
            { 
                whereStr += " and " + jProperty.Name + " ='" + jProperty.Value + "' ";
                Console.WriteLine("key:" + jProperty.Name + " value:" + jProperty.Value);

            }

//xml转Json    需要引用Newtonsoft.Json

//Xml字符串转Json字符串            
XmlDocument doc = new XmlDocument();
doc.LoadXml(xml);
string json = Newtonsoft.Json.JsonConvert.SerializeXmlNode(doc);
           

//json转xml

 //json转xml

//添加引用System.Runtime.Serialization
string sJson="你的Json格式字符串";
 XmlDictionaryReader reader = JsonReaderWriterFactory.CreateJsonReader(Encoding.UTF8.GetBytes(sJson), XmlDictionaryReaderQuotas.Max);
XmlDocument doc = new XmlDocument();
doc.Load(reader);

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Public class BarCodeHelper 条形码帮助 Public class Base64DEncrypt Base64加解密帮助 Public class BindDataControl 数据展示控件 绑定数据 Public class CacheHelper 缓存帮助 Public class ChineseCalHelper 中国日历 Public class ConvertHelper 处理数据型转换,数制转换、编码转换相关的 Public class CookieHelper Cookie帮助相关 Public class CsvHelper CSV文件转换 Public class DataToExcel 操作EXCEL导出数据报表的 Public class DESDEncrypt DES加密/解密帮助。 Public class DirectoryHelper 文件夹帮助 Public class DownloadEventArgs 下载数据参数 Public class ExcelHelper Excel操作 Public class FileDEncrypt 文件加解密帮助 Public class FileDownHelper 文件下载帮助 Public class FileHelper 文件操作帮助 Public class FileUpHelper 文件上传帮助 Public class FileValidation 图片检测 Public class FormulaHelper 数学函数帮助 Public class FTPClient Ftp客户端相关 Public class FTPHelper Ftp帮助 Public class GridViewExport GridView导出Excel相关 Public class GridViewHelper GridView操作相关 Public class HashDEncrypt 得到随机安全码(哈希加密)。 Public class HtmlHelper Html操作相关 Public class ImageDown 图片下载 Public class ImageHelper 图片处理帮助 Public class ImageUpload 图片上传 Public class INIFileHelper INI文件读写。 Public class IpHelper 共用工具 Public class JavaScriptHelper JavaScript客户端脚本输出帮助 Public class JsonHelper JSON转换帮助 Public class MailHelper 邮件操作 Public class MailSmtpHelper 使用smtp发送邮件帮助 Public class MD5Encrypt 获取MD5值帮助 Public class MediaHelper 处理多媒体的公共 Public class MessageBoxHelper 页面中弹出对话框帮助 Public class MultipartForm 对文件和文本数据进行Multipart形式的编码 Public class NetHelper 网络操作相关的 Public class NPOIHelper NPOI操作帮助 Public class PageBase 页面层(表示层)基,所有页面继承该页面 Public class PageHelper 网页帮助 Public class PageValidate 页面数据校验 Public class PDFOperation PDF文档操作 Public class PinYinHelper 中文转换拼音帮助 Public class RandomHelper 使用Random生成伪随机数和字符串 Public class RegexHelper 操作正则表达式的公共 Public class RegisterHelper 注册表辅助 Public class RMBHelper 人民币帮助 Public class RSADEncrypt RSA加密解密及RSA签名和验证 Public class SerializeHelper 序列化帮助 Public class SessionHelper Session操作 Public class SmtpConfig smtp配置 Public class SmtpSetting smtp设置 Public class StringHelper 字符串操作 Public class SysHelper 系统操作相关的公共 Public class TimeHelper 时间帮助 Public class TripleDESDEncrypt TripleDES加解密帮助 Public class UploadEventArgs 上传数据参数 Public class UrlHelper URL的操作 Public class ValidateImgPage 验证码图片基 Public class ValidatorHelper 各种验证帮助 Public class VerifyCodeHelper 验证图片 Public class VerifyCodeRand 验证码 Public class VideoHelper 视频帮助 Public class WebClientHelper 网络客户端帮助 Public class WebConfigHelper web.config操作 Public class WebSitePathHelper 网站路径操作 Public class XmlHelper Xml的操作公共 Public class XmlHelperExt xml操作帮助扩展 Public class ZipHelper Zip压缩、解压缩
c stands for C语言 (C yǔyán) which is a high-level programming language developed at AT&T Bell Laboratories in the 1970s by Dennis Ritchie. C语言是一种广泛使用的编程语言,常用于开发系统软件、嵌入式系统和游戏等应用领域。 C语言特点是简洁、高效,并且具有强大的功能和灵活性。它使用底层的计算机硬件和内存管理,使得开发者可以对程序进行细粒度的控制。C语言被广泛应用于操作系统开发、编译器设计、网络协议、设备驱动程序等核心领域。 C语言的语法相对简单,容易学习和理解。它提供了丰富的库函数和数据型,使得开发者能够快速编写出高效、可维护的程序。因此,C语言是许多大型软件项目的首选语言之一。 C语言也影响了许多其他编程语言的发展,例如C++、Java等。许多编程初学者往往从学习C语言开始,因为它可以帮助他们建立正确的编程思维和技巧。 尽管C语言有很多优点,但也存在一些缺点。例如,C语言对型的检查较弱,容易发生内存错误和指针错误。此外,C语言没有提供面向对象编程的特性,使得一些复杂的问题难以解决。 总之,C语言是一门具有重要意义的编程语言,它在计算机科学领域的发展中扮演着重要角色。无论是为了初学者学习编程基础,还是为了专业开发人员进行系统开发和底层编程,C语言都是一门必须掌握的语言。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值