zoukankan      html  css  js  c++  java
  • java日期时间处理集合

    本文主要介绍java中日期时间的处理,包括获取时间,时间相加减,格式化等操作。

    持续更新中...

    时间格式化

    //时间格式化
    SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");

    获取当前时间

    //获取当前时间
    Date currentTime = new Date();
    System.out.println(String.format("系统当前时间:%s",dateFormat.format(currentTime)));
    
    //输出
    2019-04-11 11:07:57

     时间字符串转日期类型

    //时间字符串转日期类型,以下时间加减均以此时间为基础
    String strTime = "2019-04-10 18:18:78";
    Date fixedTime;
    try{
        //特定时间字符串转为日期类型,需要处理ParseException异常
        //注意,时间字符串格式要与dateFormat定义的一致,否则引发异常
        fixedTime = dateFormat.parse(strTime);
    }
    catch (ParseException ex){
        fixedTime = new Date();
        ex.printStackTrace();
    }
    System.out.println(String.format("字符转换时间:%s,以下时间加减均以此时间为基础",dateFormat.format(fixedTime)));
    
    //输出
    字符转换时间:2019-04-10 18:19:18,以下时间加减均以此时间为基础

     使用Calendar来实现日期加减1小时,1天,1个月和1年

    //使用Calendar来实现加减1小时,1天,1个月和1年
    Calendar calendar = Calendar.getInstance();
    //指定时间减1小时
    calendar.setTime(fixedTime);
    calendar.add(Calendar.HOUR_OF_DAY, -1);
    System.out.println(String.format("1小时之前的时间:%s", dateFormat.format(calendar.getTime())));
    //指定时间加1小时
    calendar.setTime(fixedTime);
    calendar.add(Calendar.HOUR_OF_DAY, 1);
    System.out.println(String.format("1小时之后的时间:%s", dateFormat.format(calendar.getTime())));
    //指定时间减1天
    calendar.setTime(fixedTime);
    calendar.add(Calendar.DAY_OF_YEAR, -1);
    System.out.println(String.format("1天之前的时间:%s", dateFormat.format(calendar.getTime())));
    //指定时间加1天
    calendar.setTime(fixedTime);
    calendar.add(Calendar.DAY_OF_YEAR, 1);
    System.out.println(String.format("1天之后的时间:%s", dateFormat.format(calendar.getTime())));
    //指定时间减1个月
    calendar.setTime(fixedTime);
    calendar.add(Calendar.MONTH, -1);
    System.out.println(String.format("1个月之前的时间:%s", dateFormat.format(calendar.getTime())));
    //指定时间加1个月
    calendar.setTime(fixedTime);
    calendar.add(Calendar.MONTH, 1);
    System.out.println(String.format("1个月之后的时间:%s", dateFormat.format(calendar.getTime())));
    //指定时间减1年
    calendar.setTime(fixedTime);
    calendar.add(Calendar.YEAR, -1);
    System.out.println(String.format("1年之前的时间:%s", dateFormat.format(calendar.getTime())));
    //指定时间加1年
    calendar.setTime(fixedTime);
    calendar.add(Calendar.YEAR, 1);
    System.out.println(String.format("1年之后的时间:%s", dateFormat.format(calendar.getTime())));
    
    //输出
    10分钟之前的时间:2019-04-10 18:09:18
    10分钟之后的时间:2019-04-10 18:29:18
    1小时之前的时间:2019-04-10 17:19:18
    1小时之后的时间:2019-04-10 19:19:18
    1天之前的时间:2019-04-09 18:19:18
    1天之后的时间:2019-04-11 18:19:18
    1个月之前的时间:2019-03-10 18:19:18
    1个月之后的时间:2019-05-10 18:19:18
    1年之前的时间:2018-04-10 18:19:18
    1年之后的时间:2020-04-10 18:19:18

    注意:Calendar.HOUR_OF_DAY是24小时制,Calendar.HOUR是12小时制。

  • 相关阅读:
    C-二维数组,多维数组
    C-冒泡排序,选择排序,数组
    C语言的学习-基础知识点
    设置程序图标-初识IOS
    UIActivityIndicatorView-初识IOS
    生命周期-初识IOS
    机器学习
    开源的python机器学习模块
    基于Python使用scrapy-redis框架实现分布式爬虫 注
    Scrapy研究探索(六)——自动爬取网页之II(CrawlSpider)
  • 原文地址:https://www.cnblogs.com/codecat/p/10685380.html
Copyright © 2011-2022 走看看