• java 根据传入的时间获取当前月的第一天的0点0分0秒和最后一天的23点59分59秒


    /**
     * 获取指定日期所在月份开始的时间
     * lkeji
     * @return
     */
        public static String getMonthBegin(String specifiedDay) {
            Date data = null;
            try {
                data = new SimpleDateFormat("yyyy-MM-dd").parse(specifiedDay);
            } catch (ParseException e) {
                e.printStackTrace();
            }
            Calendar c = Calendar.getInstance();
            c.setTime(data);
            //设置为1号,当前日期既为本月第一天
            c.set(Calendar.DAY_OF_MONTH, 1);
            //将小时至0
            c.set(Calendar.HOUR_OF_DAY, 0);
            //将分钟至0
            c.set(Calendar.MINUTE, 0);
            //将秒至0
            c.set(Calendar.SECOND,0);
            //将毫秒至0
            c.set(Calendar.MILLISECOND, 0);
            // 本月第一天的时间戳转换为字符串
            SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
            Date date;
            try {
                date = sdf.parse(sdf.format(new Date(new Long(c.getTimeInMillis()))));
                //Date date = sdf.parse(sdf.format(new Long(s)));// 等价于
                return sdf.format(date);
            } catch (NumberFormatException e) {
                // TODO 自动生成的 catch 块
                e.printStackTrace();
            } catch (ParseException e) {
                // TODO 自动生成的 catch 块
                e.printStackTrace();
            }
            return null;
        }
    
    
      /**
         * 获取指定日期所在月份结束的时间
         * @return
         */
        public static String getMonthEnd(String specifiedDay) {
            Date data = null;
            try {
                data = new SimpleDateFormat("yyyy-MM-dd").parse(specifiedDay);
            } catch (ParseException e) {
                e.printStackTrace();
            }
            Calendar c = Calendar.getInstance();
            c.setTime(data);
    
            //设置为当月最后一天
            c.set(Calendar.DAY_OF_MONTH, c.getActualMaximum(Calendar.DAY_OF_MONTH));
            //将小时至23
            c.set(Calendar.HOUR_OF_DAY, 23);
            //将分钟至59
            c.set(Calendar.MINUTE, 59);
            //将秒至59
            c.set(Calendar.SECOND, 59);
            //将毫秒至999
            c.set(Calendar.MILLISECOND, 999);
            // 本月第一天的时间戳转换为字符串
            SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
            Date date;
            try {
                date = sdf.parse(sdf.format(new Date(new Long(c.getTimeInMillis()))));
                //Date date = sdf.parse(sdf.format(new Long(s)));// 等价于
                return sdf.format(date);
            } catch (NumberFormatException e) {
                // TODO 自动生成的 catch 块
                e.printStackTrace();
            } catch (ParseException e) {
                // TODO 自动生成的 catch 块
                e.printStackTrace();
            }
            return null;
        }
  • 相关阅读:
    使用Python验证常见的50个正则表达式
    空气开关为何叫空气开关?它跟空气有何关系?
    YOLO 算法最全综述:从 YOLOv1 到 YOLOv5
    深入理解部分 SQL 语句执行慢的原因
    KNN(k-nearest-neighbor)算法
    聚类分析方法
    SQL Database学习笔记
    statistic学习笔记
    MapReduce中的排序
    weka打开提示内存不足的解决方法
  • 原文地址:https://www.cnblogs.com/lkeji388/p/10730515.html
Copyright © 2020-2023  润新知