时间工具类TimeUtil,可以获取范围内时间

复制代码
package com.xahl.kzng.common.utils;

import java.sql.Timestamp;
import java.text.DateFormat;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.time.LocalDate;
import java.time.LocalTime;
import java.util.ArrayList;
import java.util.Calendar;
import java.util.Date;
import java.util.List;

import org.junit.Test;

public class TimeUtil {

    public static Timestamp time() { // 获取当前时间(yyyy-MM-dd hh:mm:ss)

        String s = LocalDate.now().toString() + " " + LocalTime.now().toString();
        return Timestamp.valueOf(s);

    }

    /**
     * 获取日期
     * @param day 日期增减天数  day为负数时为历史日期,day为正数时为未来日期,day为0时为当前日期
     * @return
     */
    public static LocalDate date(long day) { 
        return LocalDate.now().plusDays(day);
    }
    /**
     * 获取当前日期时间字符串格式
     * @param day 日期增减天数  day为负数时为历史日期,day为正数时为未来日期,day为0时为当前日期
     * @return
     */
    public static String dateTime(long day) { // 获取当前时间(yyyy-MM-dd hh:mm:ss)

        return LocalDate.now().plusDays(day).toString() + " " + LocalTime.now().toString().substring(0,8);

    }

    public static LocalTime hhmmss() { // 获取当前时分秒毫秒
        LocalTime.now().toString();
        return LocalTime.now();
    }

     /**
     * @param startTime  起始时间
     * @param endTime 终止时间
     * @return   中间日期集合
     */
    public static List<String> getDays(String startTime, String endTime) {

            // 返回的日期集合
            List<String> days = new ArrayList<String>();
            DateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd");
            try {
                Date start = dateFormat.parse(startTime);
                Date end = dateFormat.parse(endTime);

                Calendar tempStart = Calendar.getInstance();
                tempStart.setTime(start);
                Calendar tempEnd = Calendar.getInstance();
                tempEnd.setTime(end);
                tempEnd.add(Calendar.DATE, +1);// 日期加1(包含结束)
                while (tempStart.before(tempEnd)) {
                    days.add(dateFormat.format(tempStart.getTime()));
                    tempStart.add(Calendar.DAY_OF_YEAR, +1);
                }

            } catch (ParseException e) {
                e.printStackTrace();
            }

            return days;
        }

    /**
     * 判断当天是否是周末
     * @return
     */
    public static boolean isWeek() {
            DateFormat df = new SimpleDateFormat("yyyy-MM-dd");
            Date date=null;
            try {
                date = df.parse(LocalDate.now().toString());
            } catch (ParseException e) {
                // TODO Auto-generated catch block
                return false;
            }
            Calendar calendar = Calendar.getInstance();
            calendar.setTime(date);
            if (calendar.get(Calendar.DAY_OF_WEEK)==Calendar.SATURDAY||calendar.get(Calendar.DAY_OF_WEEK)==Calendar.SUNDAY) {
                return true;
            }
            return false;
        }
}
复制代码

 

posted @   过氧化氢  阅读(286)  评论(0编辑  收藏  举报
编辑推荐:
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
阅读排行:
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
点击右上角即可分享
微信分享提示