删除 src/main/java/com/bonus/autoweb/DateTimeUtils.java
This commit is contained in:
parent
3c106ad1ed
commit
673428752f
|
|
@ -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;
|
||||
}
|
||||
}
|
||||
Loading…
Reference in New Issue