json转java实体时间戳处理,解决json日期格式问题的3种方法

开发中有时候需要从服务器端返回json格式的数据,在后台代码中如果有DateTime类型的数据使用系统自带的工具类序列化后将得到一个很长的数字表示日期数据,如下所示:

//设置服务器响应的结果为纯文本格式

context.Response.ContentType = "text/plain";

//学生对象集合

List students = new List

{

new Student(){Name ="Tom",

Birthday =Convert.ToDateTime("2014-01-31 12:12:12")},

new Student(){Name ="Rose",

Birthday =Convert.ToDateTime("2014-01-10 11:12:12")},

new Student(){Name ="Mark",

Birthday =Convert.ToDateTime("2014-01-09 10:12:12")}

};

//javascript序列化器

JavaScriptSerializer jss=new JavaScriptSerializer();

//序列化学生集合对象得到json字符

string studentsJson=jss.Serialize(students);

//将字符串响应到客户端

context.Response.Write(studentsJson);

context.Response.End();

运行结果是:

93823980351b4f53ee726ddd30765d16.png

其中Tom所对应生日“2014-01-31”变成了1391141532000,这其实是1970 年 1 月 1 日至今的毫秒数;1391141532000/1000/60/60/24/365=44.11年,44+1970=2014年,按这种方法可以得出年月日时分秒和毫秒。这种格式是一种可行的表示形式但不是普通人可以看懂的友好格式,怎么让这个格式变化?

解决办法:

方法1:在服务器端将日期格式使用Select方法或LINQ表达式转换后发到客户端:

using System;

using System.Collections.Generic;

using System.Web;

using System.Web.Script.Serialization;

namespace JsonDate1

{

using System.Linq;

///

/// 学生类,测试用

///

public class Student

{

///

/// 姓名

///

public String Name { get; set; }

//

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值