当前位置:网站首页>Time tools
Time tools
2022-07-07 19:39:00 【Scarecrow 0.0】
public class DateUtils {
public static final Date MAX_DATE = new Date(4102243199000L);
private DateUtils() {
throw new UnsupportedOperationException(this.getClass().getName() + " is a tool class, can't be created instance!");
}
public static String convertTimeToString(long longTime) {
return convertTimeToString(longTime, "yyyy-MM-dd HH:mm:ss");
}
public static String convertTimeToString(long longTime, String format) {
try {
Timestamp t = new Timestamp(longTime * 1000L);
SimpleDateFormat sDateFormat = new SimpleDateFormat(format);
return sDateFormat.format(t);
} catch (Exception var5) {
throw new RuntimeException("Can't format the time by format[" + format + "]!");
}
}
public static long convertTimeToLong(String dateTime) {
return convertTimeToLong(dateTime, "yyyy-MM-dd HH:mm:ss");
}
public static long convertTimeToLong(String dateTime, String format) {
SimpleDateFormat sdf = new SimpleDateFormat(format);
long date = 0L;
try {
Date d = sdf.parse(dateTime);
date = d.getTime() / 1000L;
return date;
} catch (Exception var6) {
throw new RuntimeException("Can't format the time by format[" + format + "]!");
}
}
public static long getCurrentLongTime() {
return System.currentTimeMillis() / 1000L;
}
public static String getCurrentTime() {
return getCurrentTime("yyyy-MM-dd HH:mm:ss");
}
public static String getCurrentTime(String format) {
try {
SimpleDateFormat sdf = new SimpleDateFormat(format);
return sdf.format(new Date());
} catch (Exception var2) {
throw new RuntimeException("Can't format the time by format[" + format + "]!");
}
}
public static long getDayBetweenDateAndDate(String startDate, String endDate) {
SimpleDateFormat myFormatter = new SimpleDateFormat("yyyy-MM-dd");
long day = 0L;
try {
Date date = myFormatter.parse(endDate);
Date mydate = myFormatter.parse(startDate);
day = (date.getTime() - mydate.getTime()) / 86400000L;
return day;
} catch (Exception var7) {
throw new RuntimeException("Time format[" + startDate + "][" + endDate + "] is error ! format must be 'yyyy-MM-dd'!");
}
}
public static int getWeekday(String dateTime) {
SimpleDateFormat myFormatter = new SimpleDateFormat("yyyy-MM-dd");
try {
Date date = myFormatter.parse(dateTime);
Calendar cal = Calendar.getInstance();
cal.setTime(date);
return cal.get(7) - 1 < 0 ? 0 : cal.get(7) - 1;
} catch (ParseException var4) {
throw new RuntimeException("Time format[" + dateTime + "] is error ! format must be 'yyyy-MM-dd'!");
}
}
public static String getPreWeekFirstDay() {
Calendar cd = Calendar.getInstance();
int week = cd.get(7) == 1 ? 8 : cd.get(7);
int mondayPlus = week - 1 == 1 ? 0 : 1 - (week - 1);
GregorianCalendar currentDate = new GregorianCalendar();
currentDate.add(5, mondayPlus - 7);
Date monday = currentDate.getTime();
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
return sdf.format(monday);
}
public static String getPreWeekLastDay() {
Calendar cd = Calendar.getInstance();
int week = cd.get(7) == 1 ? 8 : cd.get(7);
int mondayPlus = week - 1 == 1 ? 0 : 1 - (week - 1);
GregorianCalendar currentDate = new GregorianCalendar();
currentDate.add(5, mondayPlus - 1);
Date monday = currentDate.getTime();
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
return sdf.format(monday);
}
public static String getNextWeekFirstDay() {
Calendar cd = Calendar.getInstance();
int week = cd.get(7) == 1 ? 8 : cd.get(7);
int mondayPlus = week - 1 == 1 ? 0 : 1 - (week - 1);
GregorianCalendar currentDate = new GregorianCalendar();
currentDate.add(5, mondayPlus + 7);
Date monday = currentDate.getTime();
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
return sdf.format(monday);
}
public static String getNextWeekLastDay() {
Calendar cd = Calendar.getInstance();
int week = cd.get(7) == 1 ? 8 : cd.get(7);
int mondayPlus = week - 1 == 1 ? 0 : 1 - (week - 1);
GregorianCalendar currentDate = new GregorianCalendar();
currentDate.add(5, mondayPlus + 7 + 6);
Date monday = currentDate.getTime();
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
return sdf.format(monday);
}
public static String getWeekFirstDay() {
Calendar cd = Calendar.getInstance();
int week = cd.get(7) == 1 ? 8 : cd.get(7);
int mondayPlus = week - 1 == 1 ? 0 : 1 - (week - 1);
GregorianCalendar currentDate = new GregorianCalendar();
currentDate.add(5, mondayPlus);
Date monday = currentDate.getTime();
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
return sdf.format(monday);
}
public static String getWeekLastDay() {
Calendar cd = Calendar.getInstance();
int week = cd.get(7) == 1 ? 8 : cd.get(7);
int mondayPlus = week - 1 == 1 ? 0 : 1 - (week - 1);
GregorianCalendar currentDate = new GregorianCalendar();
currentDate.add(5, mondayPlus + 6);
Date monday = currentDate.getTime();
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
return sdf.format(monday);
}
public static String getPreMonthFirstDay() {
String str = "";
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
Calendar lastDate = Calendar.getInstance();
lastDate.set(5, 1);
lastDate.add(2, -1);
str = sdf.format(lastDate.getTime());
return str;
}
public static String getPreMonthLastDay() {
String str = "";
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
Calendar lastDate = Calendar.getInstance();
lastDate.add(2, -1);
lastDate.set(5, 1);
lastDate.roll(5, -1);
str = sdf.format(lastDate.getTime());
return str;
}
public static String getMonthFirstDay() {
String str = "";
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
Calendar lastDate = Calendar.getInstance();
lastDate.set(5, 1);
str = sdf.format(lastDate.getTime());
return str;
}
public static String getMonthLastDay() {
String str = "";
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
Calendar lastDate = Calendar.getInstance();
lastDate.set(5, 1);
lastDate.add(2, 1);
lastDate.add(5, -1);
str = sdf.format(lastDate.getTime());
return str;
}
public static String getNextMonthFirstDay() {
String str = "";
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
Calendar lastDate = Calendar.getInstance();
lastDate.add(2, 1);
lastDate.set(5, 1);
str = sdf.format(lastDate.getTime());
return str;
}
public static String getNextMonthLastDay() {
String str = "";
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
Calendar lastDate = Calendar.getInstance();
lastDate.add(2, 1);
lastDate.set(5, 1);
lastDate.roll(5, -1);
str = sdf.format(lastDate.getTime());
return str;
}
public static String getBeforeAfterDate(String dateTime, int day) {
SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd");
Date oldDate = null;
try {
df.setLenient(false);
oldDate = new Date(df.parse(dateTime).getTime());
} catch (ParseException var11) {
throw new RuntimeException("Time format[" + dateTime + "] is error ! format must be 'yyyy-MM-dd'!");
}
Calendar cal = new GregorianCalendar();
cal.setTime(oldDate);
int Year = cal.get(1);
int Month = cal.get(2);
int Day = cal.get(5);
int NewDay = Day + day;
cal.set(1, Year);
cal.set(2, Month);
cal.set(5, NewDay);
Date date = new Date(cal.getTimeInMillis());
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
return sdf.format(date);
}
}
边栏推荐
- Netease Yunxin participated in the preparation of the standard "real time audio and video service (RTC) basic capability requirements and evaluation methods" issued by the Chinese Academy of Communica
- LeetCode1051(C#)
- 谷歌seo外链Backlinks研究工具推荐
- R语言dplyr包mutate_at函数和min_rank函数计算dataframe中指定数据列的排序序号值、名次值、将最大值的rank值赋值为1
- 怎么在手机上买股票开户 股票开户安全吗
- what‘s the meaning of inference
- 最长公共前缀(leetcode题14)
- MySQL、sqlserver oracle数据库连接方式
- POJ 1182: food chain (parallel search) [easy to understand]
- 杰理之关于 TWS 交叉配对的配置【篇】
猜你喜欢

从39个kaggle竞赛中总结出来的图像分割的Tips和Tricks

杰理之测试盒配置声道【篇】

博睿数据入选《2022爱分析 · IT运维厂商全景报告》

Jürgen Schmidhuber回顾LSTM论文等发表25周年:Long Short-Term Memory. All computable metaverses. Hierarchical reinforcement learning (RL). Meta-RL. Abstractions in generative adversarial RL. Soccer learn

J ü rgen schmidhub reviews the 25th anniversary of LSTM papers: long short term memory All computable metaverses. Hierarchical reinforcement learning (RL). Meta-RL. Abstractions in generative adversar

el-upload上传组件的动态添加;el-upload动态上传文件;el-upload区分文件是哪个组件上传的。

The top of slashdata developer tool is up to you!!!

Pasqal首席技术官:模拟量子计算率先为工业带来量子优势

Download from MySQL official website: mysql8 for Linux X Version (Graphic explanation)

Matplotlib drawing 3D graphics
随机推荐
浏览积分设置的目的
LeetCode1051(C#)
炒股如何开户?请问一下手机开户股票开户安全吗?
Initial experience of cache and ehcache "suggestions collection"
[mime notes]
ASP.NET幼儿园连锁管理系统源码
PMP每日一练 | 考试不迷路-7.7
AI writes a poem
how to prove compiler‘s correctness
杰理之关于 TWS 配对方式配置【篇】
5billion, another master fund was born in Fujian
位运算介绍
从39个kaggle竞赛中总结出来的图像分割的Tips和Tricks
R语言使用ggplot2函数可视化需要构建泊松回归模型的计数目标变量的直方图分布并分析构建泊松回归模型的可行性
项目经理『面试八问』,看了等于会了
In the first half of 2022, I found 10 books that have been passed around by my circle of friends
First time in China! The language AI strength of this Chinese enterprise is recognized as No.2 in the world! Second only to Google
Kirin Xin'an joins Ningxia commercial cipher Association
9 原子操作类之18罗汉增强
2022.07.04