ASP.NET中把对象序列化成JSON字符串的三种方法

                //方法1
                //using System.Runtime.Serialization.Json;
                //using System.IO;
                //using System.Text;
                //using System.Text.RegularExpressions;
                DataContractJsonSerializer jsonSerializer = new DataContractJsonSerializer(arr.GetType());
                MemoryStream ms = new MemoryStream();
                jsonSerializer.WriteObject(ms, arr);
                String sRet = Encoding.UTF8.GetString(ms.ToArray());
                ms.Close();

                //将时间由"\/Date(10000000000-0700)\/" 格式转换成 "yyyy-MM-dd HH:mm:ss" 格式的字符串
                string sPattern = @"\\/Date\((\d+)-\d+\)\\/";
                MatchEvaluator myMatchEvaluator = new MatchEvaluator(m =>
                {
                    String sRet1 = "";
                    try
                    {
                        DateTime dt = DateTime.Parse(m.Groups[1].Value);
                        dt = dt.ToUniversalTime();
                        TimeSpan ts = dt - DateTime.Parse("1970-01-01");
                        sRet1 = string.Format("\\/Date({0}-0700)\\/", ts.TotalMilliseconds);
                    }
                    catch
                    { }
                    return sRet1;
                });
                Regex reg = new Regex(sPattern);
                sRet = reg.Replace(sRet, myMatchEvaluator);

                //方法二(第三方)
                //Newtonsoft.Json
                string sRet = Newtonsoft.Json.JsonConvert.SerializeObject(arr);
                
                //方法三
                //using System.Web.Script.Serialization;
                JavaScriptSerializer serializer = new JavaScriptSerializer();
                string sRet = serializer.Serialize(arr);
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值