删除 src/main/java/com/bonus/autoweb/DateTimeUtils.java

This commit is contained in:
tqzhang 2024-05-07 16:46:35 +08:00
parent 3c106ad1ed
commit 673428752f
1 changed files with 0 additions and 288 deletions

View File

@ -1,288 +0,0 @@
package com.bonus.autoweb;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.time.LocalDate;
import java.util.*;
/**
* 日期操作工具类
*/
public class DateTimeUtils {
/**
* 获取当前时间是本周第几天从周一开始计算
* @return
*/
public static int getWeekOfDate(String dateString ) throws ParseException {
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
Date dt= sdf.parse(dateString);
int[] weekDays = {7, 1, 2, 3, 4,5, 6};
Calendar cal = Calendar.getInstance();
cal.setTime(dt);
int w = cal.get(Calendar.DAY_OF_WEEK) - 1;
if (w < 0){
w = 0;
}
return weekDays[w];
}
/**'
*获取当前时间是本月第几周
* @return
*/
public static int getWeekNum(String dateString ) throws ParseException {
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
Date date= sdf.parse(dateString);
Calendar calendar = Calendar.getInstance();
calendar.setTime(date);
int weekOfMonth = calendar.get(Calendar.WEEK_OF_MONTH);
if (getWeekOfDate(dateString) == 7){
weekOfMonth = weekOfMonth - 1;
}
return weekOfMonth;
}
/**
* 获取本月第一天在第几周
* @return true 0 false >0
* @throws ParseException
*/
public static boolean getMonthOneDayIs0() throws ParseException {
LocalDate firstDayOfMonth = LocalDate.now().withDayOfMonth(1);
int t=getWeekNum(firstDayOfMonth.toString());
// int t=getWeekNum(day);
if(t>0){
return false;
}
return true;
}
/**
* 获取上个月的最后一天
*/
public static String getBeforeLastMonthdate(){
SimpleDateFormat sf=new SimpleDateFormat("yyyy-MM-dd");
Calendar calendar=Calendar.getInstance();
int month=calendar.get(Calendar.MONTH);
calendar.set(Calendar.MONTH, month-1);
calendar.set(Calendar.DAY_OF_MONTH, calendar.getActualMaximum(Calendar.DAY_OF_MONTH));
String format = sf.format(calendar.getTime());
return format;
}
/**
* 获取当前日期
* @return
*/
public static String getCurrentDay(){
Date date=new Date();
SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd");
return formatter.format(date);
}
/**
* 获取昨天的日期
* @return
*/
public static String getLastDayYYYYMMDD(){
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
Calendar c = Calendar.getInstance();
c.add(Calendar.DATE, -1);//-1.昨天时间 0.当前时间 1.明天时间 *以此类推
String time = sdf.format(c.getTime());
System.out.println("昨天的时间时间是:" + time);//20190704
return time;
}
private static List<Integer> getARandomCollectionOfData() {
Random random = new Random();
int minCount = 3; // 最小数量
int maxCount = 5; // 最大数量
int count = random.nextInt(maxCount - minCount + 1) + minCount; // 随机生成数量
List<Integer> numbers = new ArrayList<>();
while (numbers.size() < count) {
int randomNumber = random.nextInt(6) + 2; // 随机生成1到7的数字
if (!numbers.contains(randomNumber)) {
numbers.add(randomNumber);
}
}
Collections.shuffle(numbers);
System.out.println(numbers);
return numbers;
}
public static void main(String[] args) throws ParseException {
// System.out.println(getMMDDByNow());
//获取一个随机数据集合
List<Integer> list = getARandomCollectionOfData();
for (int i = 0; i < list.size(); i++) {
String type = "";
String company = "";
if (i < 2){
type = "通信测试";
}else {
type = "日常操练";
}
switch(String.valueOf(list.get(i))){
case "1":
company = "宿州";
break;
case "2":
company = "埇桥";
break;
case "3":
company = "砀山";
break;
case "4":
company = "萧县";
break;
case "5":
company = "灵璧";
break;
case "6":
company = "城郊";
break;
case "7":
company = "泗县";
break;
default:
break;
}
System.out.println(type);
System.out.println(company);
System.out.println(i+1);
System.out.println("-------------------");
}
}
public static String getCurrentDay2(){
Date date=new Date();
SimpleDateFormat formatter = new SimpleDateFormat("MM月dd日");
return formatter.format(date);
}
/**
* 获取昨天的日期
* @return
*/
public static String getLastDay(){
SimpleDateFormat sdf = new SimpleDateFormat("MM月dd日");
Calendar c = Calendar.getInstance();
c.add(Calendar.DATE, -1);//-1.昨天时间 0.当前时间 1.明天时间 *以此类推
String time = sdf.format(c.getTime());
System.out.println("昨天的时间时间是:" + time);//20190704
return time;
}
/**
* 获取明天的日期
* @return
*/
public static String getTomorrowDate() {
SimpleDateFormat sdf = new SimpleDateFormat("MM月dd日");
Calendar c = Calendar.getInstance();
c.add(Calendar.DATE, 1);//-1.昨天时间 0.当前时间 1.明天时间 *以此类推
String time = sdf.format(c.getTime());
System.out.println("昨天的时间时间是:" + time);//20190704
return time;
}
/**
* 获取当前月日
* @return
*/
public static String getCurrentDayByMonth(){
Date date=new Date();
SimpleDateFormat formatter = new SimpleDateFormat("MM月dd日");
return formatter.format(date);
}
public static String getMMDDByNow(){
Date date=new Date();
SimpleDateFormat formatter = new SimpleDateFormat("MMdd");
return formatter.format(date);
}
/**
* 判断当前日期是否为本月第一天
* @return
*/
public static boolean isOneDay(){
// TODO Auto-generated method stub
Date now = new Date();
SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy/MM/dd");//可以方便地修改日期格式
String curr = dateFormat.format( now );
System.out.println("当前日期:" + curr);
Calendar c = Calendar.getInstance();//可以对每个时间域单独修改
int year = c.get(Calendar.YEAR);
int month = c.get(Calendar.MONTH);
int date = c.get(Calendar.DATE);
if(date == 1){
System.out.println(curr + "是第一天");
return true;
}
else{
System.out.println(curr + "不是第一天");
return false;
}
}
/**
* 判断当前时间是否在[startTime, endTime]区间注意三个参数的时间格式要一致
* @param startTime
* @param endTime
* @return 在时间段内返回true不在返回false
*/
public static boolean isEffectiveDate(String startTime, String endTime){
/**
* 判断当前时间是否在一个时间段内 HH:mm 格式
*/
SimpleDateFormat sdf = new SimpleDateFormat("HH:mm");
String now = sdf.format(new Date());
Date nowTime;
try{
nowTime = sdf.parse(now);
Date startTime1 = sdf.parse(startTime);
Date endTime1 = sdf.parse(endTime);
if (nowTime.getTime() == startTime1.getTime()
|| nowTime.getTime() == endTime1.getTime()) {
return true;
}
Calendar date = Calendar.getInstance();
date.setTime(nowTime);
Calendar begin = Calendar.getInstance();
begin.setTime(startTime1);
Calendar end = Calendar.getInstance();
end.setTime(endTime1);
return date.after(begin) && date.before(end);
}catch (Exception e){
e.printStackTrace();
}
return false;
}
public static boolean compareDate(String date1, String date2) throws ParseException {
boolean tf = false;
SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
// 定义起始日期和结束日期
Date startDate = dateFormat.parse(date1 + " 00:00:00");
Date endDate = dateFormat.parse(date2 + " 23:59:59");
// 定义要判断的日期
Date dateToCheck = new Date();
// 判断日期是否在范围内
if (startDate.compareTo(dateToCheck) <= 0 && endDate.compareTo(dateToCheck) >= 0) {
System.out.println("日期在范围内");
tf = true;
} else {
tf = false;
System.out.println("日期不在范围内");
}
return tf;
}
}