• 日期处理相关


    1、后台处理方式:

          /* 精简版解析 - 推荐 */
          String a= "Fri Dec 11 00:00:00 CST 2015";
          Date d = new Date(a);
          String f = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(d);
          System.out.println(f);
           
          /* 稍繁版解析 */
          import java.text.ParseException;
          import java.text.SimpleDateFormat;
          import java.util.Date;
          import java.util.Locale;
           
          public class Test {
              public static void main(String[] args) {
                  String str = "Mon Dec 31 00:00:00 CST 2012";
                  Date date = parse(str, "EEE MMM dd HH:mm:ss zzz yyyy", Locale.US);
                  System.out.printf("%tF %<tT%n", date);
              }
              public static Date parse(String str, String pattern, Locale locale) {
                  if(str == null || pattern == null) {
                      return null;
                  }
                  try {
                      return new SimpleDateFormat(pattern, locale).parse(str);
                  } catch (ParseException e) {
                      e.printStackTrace();
                  }
                  return null;
              }
          }
    2、前端js解析:
    /* 精简版 - 推荐,其他版本就无视吧 O(∩_∩)O哈哈~ */
    var d = new Date('Fri Dec 11 00:00:00 CST 2015');
    var dateStr = d.getFullYear() + '-' + (d.getMonth() + 1) + '-' + d.getDate() + ' '
                  + d.getHours() + ':' + d.getMinutes() + ':' + d.getSeconds();
    //或者
    var d = new Date('Sun Mar 4 20:34:26 UTC+0800 2012'); // UTC+0800:表示北京时区
    var str = d.toLocaleDateString().replace(/(d+)[^d](d+)[^d](d+)[^d]/, "$1-$2-$3") + d.toLocaleTimeString();
    console.log(str);
    结果: 2012年3月4号20:34:26
    3、日期偏移计算     
      // 向前向后偏移几      
      function addDate(date,num){
        var d = new Date(date);
        d = d.valueOf();
        d = d + num * 24 * 60 * 60 * 1000;
        a = new Date(a);
        return d;
      }
      // 计算两天的相差天数
      function differ(pre,after){
        var preDate = new Date(pre), afterDate = new Date(after);
        var differTimes = preDate.valueOf() - afterDate.valueOf();
        return Math.round(differTimes/(24 * 60 * 60 * 1000));
      }
     /**
     * 按月偏移计算日期
     * @param d : 日期字符串 '2017-12-12 12:26:36'
     * @param m : 偏移几个月
      **/
     function addMoth(d,m){
       var suffic=d.substring(10), prefic=d.substring(0,10),
         ds=prefic.split('-'), _d=ds[2]-0;
       var nextM=new Date( ds[0],ds[1]-1+m+1, 0 );
       var max=nextM.getDate();
       d = new Date( ds[0],ds[1]-1+m,_d>max? max:_d );
       return d.toLocaleDateString().match(/d+/g).join('-')+suffic;
     }
  • 相关阅读:
    闭包
    递归 斐波那契
    作用域,函数的四种调用模式
    数组方法
    Math内置对象
    BeanUtils.copyProperties() 用法
    ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE) .append("Id",getId())防止内存泄漏
    Spring配置文件applicationContext.xml Hibernate SQL方言 (hibernate.dialect)
    Redis面试总结
    Nginx面试题
  • 原文地址:https://www.cnblogs.com/xtreme/p/4994146.html
Copyright © 2020-2023  润新知