liujiaji 080954033c app
测试工具
alt+c 功能 清除 测试脏数据
2018-08-03 22:18:24 +08:00

218 lines
6.4 KiB
Java
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

package com.base.util;
import java.text.DateFormat;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
import java.util.GregorianCalendar;
import com.amarsoft.are.ARE;
public class DateUtil {
public final static String FULL_TIME_FORMAT = "yyyy-MM-dd HH:mm:ss.SSS";
public final static String TIME_MONTH = "MONTH";
public final static String TIME_DAY = "DAY";
public final static String TIME_YEAR = "YEAR";
public static void main(String[] args) throws InterruptedException {
System.out.println(timeStamp());
Thread.sleep(1000*5);
System.out.println(timeStamp(new Date()));
Thread.sleep(1000*5);
System.out.println(timeStamp(getDateTime(new Date()), "yyyy-MM-dd HH:mm:ss"));
}
/**
* 取得当前时间戳(精确到秒)
*
* @return
*/
public static String timeStamp() {
long time = System.currentTimeMillis();
String t = String.valueOf(time / 1000);
return t;
}
public static String timeStamp(String dateStr, String format) {
try {
SimpleDateFormat sdf = new SimpleDateFormat(format);
return String.valueOf(sdf.parse(dateStr).getTime() / 1000);
} catch (Exception e) {
System.out.println(e);
e.printStackTrace();
}
return "";
}
public static String timeStamp(Date date) {
return timeStamp(getDateTime(date), "yyyy-MM-dd HH:mm:ss");
}
public static int getIntervalDays(Date startDate, Date endDate) {
if ((null == startDate) || (null == endDate)) {
return -1;
}
long intervalMilli = (endDate.getTime() - startDate.getTime());
return (int) (intervalMilli / (24 * 60 * 60 * 1000));
}
@SuppressWarnings("static-access")
public static String getNexMonthDate(Date date, int iInterval,
String returnForMat) {
Calendar calendar = new GregorianCalendar();
calendar.setTime(date);
calendar.add(calendar.MONTH, iInterval);// 把日期往后增加一个月.整数往后推,负数往前移动
date = calendar.getTime(); // 这个时间就是日期往后推一天的结果
String sDate = DateUtil.getSystemTimeByFormat(date, returnForMat);
return sDate;
}
public static int daysOfTwo(Date startDate, Date endDate) {
Calendar aCalendar = Calendar.getInstance();
aCalendar.setTime(startDate);
int day1 = aCalendar.get(Calendar.DAY_OF_YEAR);
aCalendar.setTime(endDate);
int day2 = aCalendar.get(Calendar.DAY_OF_YEAR);
return day2 - day1;
}
public static int getMonthSpace(String date1, String date2)
throws ParseException {
int result = 0;
SimpleDateFormat sdf = new SimpleDateFormat("yyyy/MM/dd");
Calendar c1 = Calendar.getInstance();
Calendar c2 = Calendar.getInstance();
c1.setTime(sdf.parse(date1));
c2.setTime(sdf.parse(date2));
result = c2.get(Calendar.MONTH) - c1.get(Calendar.MONTH);
return result + (c2.get(Calendar.YEAR) - c1.get(Calendar.YEAR)) * 12;
}
public static String addDate(Date startDate, String type, Integer num) {
Calendar aCalendar = Calendar.getInstance();
aCalendar.setTime(startDate);
if (type.equalsIgnoreCase(DateUtil.TIME_DAY)) {
aCalendar.add(Calendar.DAY_OF_YEAR, num);
} else if (type.equalsIgnoreCase(DateUtil.TIME_MONTH)) {
aCalendar.add(Calendar.MONTH, num);
} else {
aCalendar.add(Calendar.YEAR, num);
}
return DateUtil
.getSystemTimeByFormat(aCalendar.getTime(), "yyyy-MM-dd");
}
public static String addDate(String startDate, String type, Integer num) {
Date dateStart = getTimeByFormat(startDate, "yyyy-MM-dd");
return addDate(dateStart, type, num);
}
public static Date getEndDateByDays(Date startDate, int days) {
Calendar aCalendar = Calendar.getInstance();
aCalendar.setTime(startDate);
aCalendar.add(Calendar.DAY_OF_YEAR, days);
return aCalendar.getTime();
}
public static String getSystemDate() {
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
return sdf.format(new Date());
}
public static String getSystemDateTime() {
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
return sdf.format(new Date());
}
public static String getSystemDateDetailTime() {
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss:sss");
return sdf.format(new Date());
}
public static String getDateTime(Date date) {
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
if (null == date) {
date = new Date();
}
return sdf.format(date);
}
/**
* @param dateFormat
* 输出日期格式形如yyyy-MM-dd HH:mm:ss
* @return 格式化后的日期字符串
*/
public static String getSystemTimeByFormat(String dateFormat) {
SimpleDateFormat sdf = new SimpleDateFormat(dateFormat);
return sdf.format(new Date());
}
public static String getSystemTimeByFormat(Date date, String dateFormat) {
SimpleDateFormat sdf = new SimpleDateFormat(dateFormat);
return sdf.format(date);
}
public static String getTimeAllByFormat(String dateFormat)
throws ParseException {
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
Date date = sdf.parse(dateFormat);
DateFormat format = new SimpleDateFormat("yyyy年MM月dd日");
return format.format(date);
}
/**
* @param dateStr
* 日期字符串形如yyyy-MM-dd HH:mm:ss
* @param dateFormat
* 输出日期格式形如yyyy-MM-dd HH:mm:ss
* @return 格式化后的日期字符串
*/
public static Date getTimeByFormat(String dateStr, String dateFormat) {
SimpleDateFormat sdf = new SimpleDateFormat(dateFormat);
Date date = null;
try {
date = sdf.parse(dateStr);
} catch (ParseException e) {
e.printStackTrace();
}
return date;
}
/**
* 获取 yyyy-MM-dd 日期
*
* @param dateStr
* 日期时间字符串
* @param dateFormat
* dateStr的字符串格式
* @return ' yyyy-MM-dd '格式日期
*/
public static String getFormateDate(String dateStr, String dateFormat) {
SimpleDateFormat sdf = new SimpleDateFormat(dateFormat);
Date date = null;
try {
date = sdf.parse(dateStr);
} catch (ParseException e) {
e.printStackTrace();
}
sdf = new SimpleDateFormat("yyyy-MM-dd");
return sdf.format(date);
}
// public static void main(String[] args) {
// String date = getSystemTimeByFormat(new Date(), "yyyy/MM/dd HH:mm:ss");
// System.out.println(date);
// String[] dateArray = date.split("/");
// System.out.println("year :" + dateArray[0]);
// System.out.println("month :" + dateArray[1]);
// System.out.println("day :" + dateArray[2]);
// }
}