• 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小时制。

  • 相关阅读:
    服务器(Ubuntu 12.04 LTS)上编译基于OpenCV的项目遇到的问题及解决方案
    ubuntu 16.04 LTS 降级安装gcc 4.8
    C#程序中获取电脑硬件配置信息的一种方法
    C#程序将对象保存为json文件的方法
    C#中运用事件实现异步调用
    Redis实现分布式锁 php
    CI框架整合UEditor编辑器上传功能
    PHP给图片加水印具体实现
    检测网站是否被和谐!
    vue的双向绑定和依赖收集
  • 原文地址:https://www.cnblogs.com/codecat/p/10685380.html
Copyright © 2020-2023  润新知