【解决方案】时间格式处理方案

.net

DateTime paramDateTime = DateTime.Now;//如果paramGetDate==null,则使用当前时间 if (dateTime > 0) { //将long类型时间戳的参数转换为DateTime类型 paramDateTime = new DateTime(1970, 1, 1).AddMilliseconds(dateTime); }

TimeSpan ts = DateTime.Now - new DateTime(1970, 1, 1);

ts.TotalMilliseconds

原来Java的日期添加不像.NET的.Add;

import java.util.Date ;

date=new   date();//取时间 
     Calendar   calendar   =   new   GregorianCalendar(); 
     calendar.setTime(date); 
     calendar.add(calendar.DATE,1);//把日期往后增加一天.整数往后推,负数往前移动

   //增加1秒 calendar.add (Calendar.SECOND, 1);
     date=calendar.getTime();   //这个时间就是日期往后推一天的结果

------

毫秒 long类型 处理方法

使用Calendar的setTimeInMillis的方法,注意c.add(Calendar.MILLISECOND,int value)并不能完成任务.

示范代码如下:

Calendar c = Calendar.getInstance();

c.setTimeInMillis(1403931367000L);

System.out.println(c.getTime());

------

jquery:

new Date().getTime()//获取当前时间(从1970.1.1开始的毫秒数) 
new Data(具体时间点).getTime()

var TimeObjectUtil;
/**
 * @title 时间工具类
 * @note 本类一律违规验证返回false
 * @author {[email protected]}
 * @date 2013-07-01
 * @formatter "2013-07-01 00:00:00" , "2013-07-01"
 */
TimeObjectUtil = {
    /**
     * 获取当前时间毫秒数
     */
    getCurrentMsTime : function() {
        var myDate = new Date();
        return myDate.getTime();
    },
    /**
     * 毫秒转时间格式
     */
    longMsTimeConvertToDateTime : function(time) {
        var myDate = new Date(time);
        return this.formatterDateTime(myDate);
    },
    /**
     * 时间格式转毫秒
     */
    dateToLongMsTime : function(date) {
        var myDate = new Date(date);
        return myDate.getTime();
    },
    /**
     * 格式化日期(不含时间)
     */
    formatterDate : function(date) {
        var datetime = date.getFullYear()
                + "-"// "年"
                + ((date.getMonth() + 1) > 10 ? (date.getMonth() + 1) : "0"
                        + (date.getMonth() + 1))
                + "-"// "月"
                + (date.getDate() < 10 ? "0" + date.getDate() : date
                        .getDate());
        return datetime;
    },
    /**
     * 格式化日期(含时间"00:00:00")
     */
    formatterDate2 : function(date) {
        var datetime = date.getFullYear()
                + "-"// "年"
                + ((date.getMonth() + 1) > 10 ? (date.getMonth() + 1) : "0"
                        + (date.getMonth() + 1))
                + "-"// "月"
                + (date.getDate() < 10 ? "0" + date.getDate() : date
                        .getDate()) + " " + "00:00:00";
        return datetime;
    },
    /**
     * 格式化去日期(含时间)
     */
    formatterDateTime : function(date) {
        var datetime = date.getFullYear()
                + "-"// "年"
                + ((date.getMonth() + 1) > 10 ? (date.getMonth() + 1) : "0"
                        + (date.getMonth() + 1))
                + "-"// "月"
                + (date.getDate() < 10 ? "0" + date.getDate() : date
                        .getDate())
                + " "
                + (date.getHours() < 10 ? "0" + date.getHours() : date
                        .getHours())
                + ":"
                + (date.getMinutes() < 10 ? "0" + date.getMinutes() : date
                        .getMinutes())
                + ":"
                + (date.getSeconds() < 10 ? "0" + date.getSeconds() : date
                        .getSeconds());
        return datetime;
    },
    /**
     * 时间比较{结束时间大于开始时间}
     */
    compareDateEndTimeGTStartTime : function(startTime, endTime) {
        return ((new Date(endTime.replace(/-/g, "/"))) > (new Date(
                startTime.replace(/-/g, "/"))));
    },
    /**
     * 验证开始时间合理性{开始时间不能小于当前时间{X}个月}
     */
    compareRightStartTime : function(month, startTime) {
        var now = formatterDayAndTime(new Date());
        var sms = new Date(startTime.replace(/-/g, "/"));
        var ems = new Date(now.replace(/-/g, "/"));
        var tDayms = month * 30 * 24 * 60 * 60 * 1000;
        var dvalue = ems - sms;
        if (dvalue > tDayms) {
            return false;
        }
        return true;
    },
    /**
     * 验证开始时间合理性{结束时间不能小于当前时间{X}个月}
     */
    compareRightEndTime : function(month, endTime) {
        var now = formatterDayAndTime(new Date());
        var sms = new Date(now.replace(/-/g, "/"));
        var ems = new Date(endTime.replace(/-/g, "/"));
        var tDayms = month * 30 * 24 * 60 * 60 * 1000;
        var dvalue = sms - ems;
        if (dvalue > tDayms) {
            return false;
        }
        return true;
    },
    /**
     * 验证开始时间合理性{结束时间与开始时间的间隔不能大于{X}个月}
     */
    compareEndTimeGTStartTime : function(month, startTime, endTime) {
        var sms = new Date(startTime.replace(/-/g, "/"));
        var ems = new Date(endTime.replace(/-/g, "/"));
        var tDayms = month * 30 * 24 * 60 * 60 * 1000;
        var dvalue = ems - sms;
        if (dvalue > tDayms) {
            return false;
        }
        return true;
    },
    /**
     * 获取最近几天[开始时间和结束时间值,时间往前推算]
     */
    getRecentDaysDateTime : function(day) {
        var daymsTime = day * 24 * 60 * 60 * 1000;
        var yesterDatsmsTime = this.getCurrentMsTime() - daymsTime;
        var startTime = this.longMsTimeConvertToDateTime(yesterDatsmsTime);
        var pastDate = this.formatterDate2(new Date(startTime));
        var nowDate = this.formatterDate2(new Date());
        var obj = {
            startTime : pastDate,
            endTime : nowDate
        };
        return obj;
    },
    /**
     * 获取今天[开始时间和结束时间值]
     */
    getTodayDateTime : function() {
        var daymsTime = 24 * 60 * 60 * 1000;
        var tomorrowDatsmsTime = this.getCurrentMsTime() + daymsTime;
        var currentTime = this.longMsTimeConvertToDateTime(this.getCurrentMsTime());
        var termorrowTime = this.longMsTimeConvertToDateTime(tomorrowDatsmsTime);
        var nowDate = this.formatterDate2(new Date(currentTime));
        var tomorrowDate = this.formatterDate2(new Date(termorrowTime));
        var obj = {
            startTime : nowDate,
            endTime : tomorrowDate
        };
        return obj;
    },
    /**
     * 获取明天[开始时间和结束时间值]
     */
    getTomorrowDateTime : function() {
        var daymsTime = 24 * 60 * 60 * 1000;
        var tomorrowDatsmsTime = this.getCurrentMsTime() + daymsTime;
        var termorrowTime = this.longMsTimeConvertToDateTime(tomorrowDatsmsTime);
        var theDayAfterTomorrowDatsmsTime = this.getCurrentMsTime()+ (2 * daymsTime);
        var theDayAfterTomorrowTime = this.longMsTimeConvertToDateTime(theDayAfterTomorrowDatsmsTime);
        var pastDate = this.formatterDate2(new Date(termorrowTime));
        var nowDate = this.formatterDate2(new Date(theDayAfterTomorrowTime));
        var obj = {
            startTime : pastDate,
            endTime : nowDate
        };
        return obj;
    }
};
时间: 2024-12-31 11:15:43

【解决方案】时间格式处理方案的相关文章

EF实体类,设置导航属性,导致序列化时出现&quot;循环引用&quot;错误,及序列化时间格式解决方案

三个实体类,学生类(Student),班级类(StudentClass),年级类(Grade) 学生类与班级类为多对一的关系,班级表的主键为学生表的外键,年级表的主键为学生表的外键 public class Student { [Column("StudentId")] public int Id { get; set; } [Required] [StringLength(200)] public string _Name { get; set; } public int _Sex

.net时间格式与彻夜未眠的我

夜已经很深了,外面的狂风还在呜呜的叫着,我的脚已经冰凉冰凉...从11点半到现在我一直在测试为什么正确的Json格式字符串传到服务器后还在报400错误... 尼玛啊,以前测试是没有问题的啊 事情是这样,我的ios在将一个类转换为字典后用AFNetwork传输到服务器,以前好好现在在一直报400错误,检查了几遍程序,最后只能这样了,输出字典的Json字符串,用fiddler测试服务端...只好翻出以前的测试过的Json字符串... 一一对比,目前的json字符串比原来多了一个时间两个id值,一并删

js 处理Json 时间带T 时间格式

对于后台传过来的json数据是带T时间格式的坑处理的一些做法总结 new Date(data[j].addtime).toISOString().replace(/T/g, ' ').replace(/\.[\d]{3}Z/, '') 仅针对这个问题来说,不需要那么大量的代码即可完成 方案1(适用于中国标准时间): var date = new Date(+new Date()+8*3600*1000).toISOString().replace(/T/g,' ').replace(/\.[\d

转载自——Json.net动态序列化以及对时间格式的处理

关于我工作中对Json处理的东西 第一:动态序列化类 第二:时间格式处理 通常我们一个类里 可能有十到更多的属性,但是我们序列化通常只需要序列化其中的 三到五个这样的话就会有多余的数据 如果 我只想序列化   id 跟name如何处理 这是我找的网上的方法: using Newtonsoft.Json; using Newtonsoft.Json.Converters; using Newtonsoft.Json.Serialization; using System; using System

Json.net动态序列化以及对时间格式的处理

关于我工作中对Json处理的东西 第一:动态序列化类 第二:时间格式处理 通常我们一个类里 可能有十到更多的属性,但是我们序列化通常只需要序列化其中的 三到五个这样的话就会有多余的数据 如果 我只想序列化   id 跟name如何处理 这是我找的网上的方法: using Newtonsoft.Json; using Newtonsoft.Json.Converters; using Newtonsoft.Json.Serialization; using System; using System

将自定义时间格式的时间字符串转成C#标准DateTime时间

今天遇到个问题,将"yyyyMMddHHmmss"直接用Convert.ToDateTime()转换时抛出个FormatException:该字符串未被识别为有效的 DateTime. 到网上搜索了一下,找到了解决方案: string time1 = "20150123134045"; DateTime dt1 = DateTime.ParseExact(time1, "yyyyMMddHHmmss", CultureInfo.CurrentCu

android时间格式的转化,String,Date,long

long time=System.currentTimeMillis(); System.out.println(time); SimpleDateFormat format=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); java.util.Date d1=new Date(time); String now=format.format(d1); System.out.println(now); long t = 0; try { java.

linux基础--时间格式

在linux中,经常会使用各种时间格式,特别在shell脚本中会经常调用,默认的时间格式为 [[email protected] ~]# date Wed Dec 14 19:43:07 CST 2016 注:如果拼接日期格式中有空格,则需要使用"..."来表示 常见格式有: %Y    年份 %m    月份(01-12) %d    按月计的日期(例如:01) %H    小时(00-23) %l    时(1-12) %M    分(00-59) %S    秒(00-60) %

Windows2008R2 IIS7日期时间格式更改

背景:最近把WEB程序从Win2003迁移到Win2008R2上,遇到一个问题:页面上日期显示格式跟原来不一样(如图).现在记录一下备忘. 正确格式是:2016-09-13:而显示出来是2016/09/13. 怎么解决此问题呢? 解决方法: 1. 在控制面板----区域和语言----格式----日期和时间格式,变更为如下格式. 2. 区域和语言----管理----复制设置----选中"欢迎屏幕和系统帐户" 3. 服务器管理器----角色----Web服务器(IIS)----系统服务.