• java和js获取当前天之后或之前7天(任意)日期


    一.获取过去第几天的日期(- 操作) 或者 未来 第几天的日期( + 操作)

    16     /**
    17      * 获取过去第几天的日期(- 操作) 或者 未来 第几天的日期( + 操作)
    18      *
    19      * @param past
    20      * @return
    21      */
    22     public static String getPastDate(int past) {
    23         Calendar calendar = Calendar.getInstance();
    24         calendar.set(Calendar.DAY_OF_YEAR, calendar.get(Calendar.DAY_OF_YEAR) - past);
    25         Date today = calendar.getTime();
    26         SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd");
    27         String result = format.format(today);
    28         Log.e(null, result);
    29         return result;
    30     }
    31 
    

    二.获得N小时前(- 操作)的时间或者N小时后(+ 操作)的时间

     1     private static void getHourPastOrFutureTime() {
     2         try {
     3             SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");     
     4             Calendar calendar=Calendar.getInstance();
     5             /* HOUR_OF_DAY 指示一天中的小时 */ 
     6             calendar.set(Calendar.HOUR_OF_DAY, calendar.get(Calendar.HOUR_OF_DAY) + 1);
     7             System.out.println("一个小时前的时间:" + sdf.format(calendar.getTime()));
     8             System.out.println("当前时间:" + sdf.format(new Date()));
     9             
    10             /*当前时间 String 类型--->Date类型*/
    11             Date currentDateTime = sdf.parse(sdf.format(new Date()));
    12         } catch (ParseException e1) {
    13             e1.printStackTrace();
    14         }
    15     }

    三.Js种获取相应对日期的处理方式:

    方法一:

     1 function getNowFormatDate() {
     2     var date = new Date();
     3     var seperator1 = "-";
     4     var seperator2 = ":";
     5     var month = date.getMonth() + 1;
     6     var strDate = date.getDate();
     7     if (month >= 1 && month <= 9) {
     8         month = "0" + month;
     9     }
    10     if (strDate >= 0 && strDate <= 9) {
    11         strDate = "0" + strDate;
    12     }
    13     var currentdate = date.getFullYear() + seperator1 + month + seperator1 + strDate
    14             + " " + date.getHours() + seperator2 + date.getMinutes()
    15             + seperator2 + date.getSeconds();
    16     return currentdate;
    17 }

    方法二:

     1 // 对Date的扩展,将 Date 转化为指定格式的String   
     2 // 月(M)、日(d)、小时(h)、分(m)、秒(s)、季度(q) 可以用 1-2 个占位符,   
     3 // 年(y)可以用 1-4 个占位符,毫秒(S)只能用 1 个占位符(是 1-3 位的数字)   
     4 // 例子:   
     5 // (new Date()).Format("yyyy-MM-dd hh:mm:ss.S") ==> 2006-07-02 08:09:04.423   
     6 // (new Date()).Format("yyyy-M-d h:m:s.S")      ==> 2006-7-2 8:9:4.18   
     7 Date.prototype.Format = function(fmt)   
     8 { //author: meizz   
     9   var o = {   
    10     "M+" : this.getMonth()+1,                 //月份   
    11     "d+" : this.getDate(),                    //
    12     "h+" : this.getHours(),                   //小时   
    13     "m+" : this.getMinutes(),                 //
    14     "s+" : this.getSeconds(),                 //
    15     "q+" : Math.floor((this.getMonth()+3)/3), //季度   
    16     "S"  : this.getMilliseconds()             //毫秒   
    17   };   
    18   if(/(y+)/.test(fmt))   
    19     fmt=fmt.replace(RegExp.$1, (this.getFullYear()+"").substr(4 - RegExp.$1.length));   
    20   for(var k in o)   
    21     if(new RegExp("("+ k +")").test(fmt))   
    22   fmt = fmt.replace(RegExp.$1, (RegExp.$1.length==1) ? (o[k]) : (("00"+ o[k]).substr((""+ o[k]).length)));   
    23   return fmt;   
    24 }  

    调用方法:

    var time1 = new Date().format("yyyy-MM-dd HH:mm:ss");   
    var time2 = new Date().format("yyyy-MM-dd");  

    js获取当前日期前后N天的方法:

    1 function GetDateStr(AddDayCount) { 
    2     var dd = new Date(); 
    3     dd.setDate(dd.getDate()+AddDayCount);//获取AddDayCount天后的日期 
    4     var y = dd.getFullYear(); 
    5     var m = dd.getMonth()+1;//获取当前月份的日期 
    6     var d = dd.getDate(); 
    7     return y+"-"+m+"-"+d; 
    8 } 

    我总结的其他关于日期和时间的博文:

    http://www.cnblogs.com/DreamDrive/p/5735758.html

    http://www.cnblogs.com/DreamDrive/p/4093622.html

  • 相关阅读:
    使用Systemctl命令来管理系统服务
    使用lsblk命令列出系统中的块设备
    史上最全 | 1000余个实用尽调网站分类汇编
    ​2021年机器学习什么风向?谷歌大神Quoc Le:把注意力放在MLP上
    上手使用 DeepMind 分布式强化学习框架 Acme ,对开发者超友好
    005-ESP32学习开发(SDK)-新建工程补充-通过官方示例创建工程
    Golang 程序中实现优雅关闭 HTTP SERVER
    Golang的time.NewTicker周期性定时器使用案例
    彻底搞懂golang的GOROOT和GOPATH
    微服务之-ServiceMesh
  • 原文地址:https://www.cnblogs.com/DreamDrive/p/6255631.html
Copyright © 2020-2023  润新知