- 浏览: 137850 次
- 性别:
- 来自: 北京
文章分类
最新评论
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
import java.util.GregorianCalendar;
import java.util.TimeZone;
/**
* 时间处理函数
*
* @20080509 15:50
*/
public class DateUtil {
private static final String DEFAULT_PATTERN = "yyyy-MM-dd HH:mm:ss";
public static final String TIME_YEAR = "yyyy";
public static final String TIME_MONEN = "MM";
public static final String TIME_DAY = "dd";
public static String getDate(String interval, Date starttime, String pattern) {
Calendar temp = Calendar.getInstance(TimeZone.getDefault());
temp.setTime(starttime);
temp.add(temp.MONTH, Integer.parseInt(interval));
SimpleDateFormat sdf = new SimpleDateFormat(pattern);
return sdf.format(temp.getTime());
}
/**
* 将字符串类型转换为时间类型
*
* @return
*/
public static Date str2Date(String str) {
Date d = null;
SimpleDateFormat sdf = new SimpleDateFormat(DEFAULT_PATTERN);
try {
d = sdf.parse(str);
} catch (Exception e) {
e.printStackTrace();
}
return d;
}
public static Date str2Date(String str, String pattern) {
Date d = null;
SimpleDateFormat sdf = new SimpleDateFormat(pattern);
try {
d = sdf.parse(str);
} catch (Exception e) {
e.printStackTrace();
}
return d;
}
/**
* 将时间格式化
*
* @return
*/
public static Date DatePattern(Date date) {
SimpleDateFormat sdf = new SimpleDateFormat(DEFAULT_PATTERN);
try {
String dd = sdf.format(date);
date = str2Date(dd);
} catch (Exception e) {
e.printStackTrace();
}
return date;
}
/**
* 将时间格式化
*/
public static Date DatePattern(Date date, String pattern) {
SimpleDateFormat sdf = new SimpleDateFormat(pattern);
try {
String dd = sdf.format(date);
date = str2Date(dd, pattern);
} catch (Exception e) {
e.printStackTrace();
}
return date;
}
public static String date2Str(Date date) {
SimpleDateFormat sdf = new SimpleDateFormat(DEFAULT_PATTERN);
return sdf.format(date);
}
public static String date2Str(Date date, String format) {
SimpleDateFormat sdf = new SimpleDateFormat(format);
return sdf.format(date);
}
/**
* 获取昨天
*
* @param date
* @return
* @throws Exception
*/
public static Date getLastDate(Date date) {
Calendar calendar = Calendar.getInstance(TimeZone.getDefault());
calendar.setTime(date);
calendar.add(calendar.DATE, -1);
return str2Date(date2Str(calendar.getTime()));
}
/**
* 获取前几天
* @param date
* @return
*/
public static Date getBeforeDate(Date date,int dates) {
Calendar calendar = Calendar.getInstance(TimeZone.getDefault());
calendar.setTime(date);
calendar.add(calendar.DATE, -dates);
return str2Date(date2Str(calendar.getTime()));
}
/**
* 获取上周第一天(周一)
*
* @param date
* @return
* @throws Exception
*/
public static Date getLastWeekStart(Date date) {
Calendar calendar = Calendar.getInstance(TimeZone.getDefault());
calendar.setTime(date);
int i = calendar.get(calendar.DAY_OF_WEEK) - 1;
int startnum = 0;
if (i == 0) {
startnum = 7 + 6;
} else {
startnum = 7 + i - 1;
}
calendar.add(calendar.DATE, -startnum);
return str2Date(date2Str(calendar.getTime()));
}
/**
* 获取上周最后一天(周末)
*
* @param date
* @return
* @throws Exception
*/
public static Date getLastWeekEnd(Date date) {
Calendar calendar = Calendar.getInstance(TimeZone.getDefault());
calendar.setTime(date);
int i = calendar.get(calendar.DAY_OF_WEEK) - 1;
int endnum = 0;
if (i == 0) {
endnum = 7;
} else {
endnum = i;
}
calendar.add(calendar.DATE, -(endnum - 1));
return str2Date(date2Str(calendar.getTime()));
}
/**
* 根据年和月得到天数
* @param num 月
* @param year 年
* @return
*/
public static int getday(int num,int year){
if(num==1 || num==3 || num==5 || num==7 || num==8 || num==10 || num==12){
return 31;
}else if(num==2){
//判断是否为闰年
if(year%400==0 || (year%4==0 && year%100!=0)){
return 29;
}else{
return 28;
}
}else{
return 30;
}
}
/*
* 计算当前日期距离下个月还有多少天
*/
public static int getdaymis(Date time){
int year = Integer.parseInt(
new SimpleDateFormat(TIME_YEAR).format(time));//年
int mm = Integer.parseInt(
new SimpleDateFormat(TIME_MONEN).format(time));//月
int dd = Integer.parseInt(
new SimpleDateFormat(TIME_DAY).format(time));//日
//获取当前年月的总天数
int sdd = getday(mm,year);
return sdd-dd;
}
/**
* 日期转秒数
* @param dateString
* @return
*/
public static long getTime(String dateString) {
long time = 0;
try {
Date ret = null;
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
ret = sdf.parse(dateString);
time = ret.getTime()/1000;
} catch (Exception e) {
}
return time;
}
/**
* 精确计算时间差,精确到日
* @param fistill 起始日期
* @param nowtime 结束日期
* @param type type为1返回年月日(如:2年3个月零5天) 否则返回总的天数
* @return
*/
public static String patienage(Date fistill,Date nowtime,Integer type){
int fyear = Integer.parseInt(
new SimpleDateFormat(TIME_YEAR).format(fistill));//起始年
int fmm = Integer.parseInt(
new SimpleDateFormat(TIME_MONEN).format(fistill));//起始月
int fdd = Integer.parseInt(
new SimpleDateFormat(TIME_DAY).format(fistill));//起始日
int nyear = Integer.parseInt(
new SimpleDateFormat(TIME_YEAR).format(nowtime));//结束年
int nmm = Integer.parseInt(
new SimpleDateFormat(TIME_MONEN).format(nowtime));//结束月
int ndd = Integer.parseInt(
new SimpleDateFormat(TIME_DAY).format(nowtime));//结束日
int cyear = nyear - fyear;
int cmm = nmm - fmm;
int cdd = ndd - fdd;
int zyear = 0;
int zmm = 0;
int zdd = 0;
int countddd = 0; //年月日累计天数
if(cdd<0){
if(cmm<0){
zyear = cyear - 1;
zmm = (cmm + 12)-1;
int dd = getday(zmm,nyear-1);
zdd = dd + cdd;
countddd = zyear*365+zmm*30+zdd;
}else if(cmm==0){
zyear = cyear - 1;
zmm = 12-1;
int dd = getday(zmm,nyear-1);
zdd = dd + cdd;
countddd = zyear*365+zmm*30+zdd;
}else{
zyear = cyear;
zmm = cmm - 1;
int dd = getday(zmm,nyear);
zdd = dd + cdd;
countddd = zyear*365+zmm*30+zdd;
}
}else if(cdd==0){
if(cmm<0){
zyear = cyear - 1;
zmm = cmm + 12;
zdd = 0;
countddd = zyear*365+zmm*30;
}else if(cmm==0){
zyear = cyear;
zmm = 0;
zdd = 0;
countddd = zyear*365+zmm*30;
}else{
zyear = cyear;
zmm = cmm;
zdd = 0;
countddd = zyear*365+zmm*30;
}
}else{
if(cmm<0){
zyear = cyear - 1;
zmm = cmm + 12;
zdd = cdd;
countddd = zyear*365+zmm*30+zdd;
}else if(cmm==0){
zyear = cyear;
zmm = 0;
zdd = cdd;
countddd = zyear*365+zmm*30+zdd;
}else{
zyear = cyear;
zmm = cmm;
zdd = cdd;
countddd = zyear*365+zmm*30+zdd;
}
}
String ptime = null;
if(zdd!=0){
if(zmm!=0){
if(zyear!=0){
ptime = zyear+"年"+zmm+"个月"+"零"+zdd+"天";
}else{
ptime = zmm+"个月"+"零"+zdd+"天";
}
}else{
if(zyear!=0){
ptime = zyear+"年"+"零"+zdd+"天";
}else{
ptime = zdd+"天";
}
}
}else{
if(zmm!=0){
if(zyear!=0){
ptime = zyear+"年"+zmm+"个月";
}else{
ptime = zmm+"个月";
}
}else{
if(zyear!=0){
ptime = zyear+"年";
}else{
ptime = null;
}
}
}
if(type==1){
return ptime; //返回年月日(如:2年3个月零5天)
}else{
return String.valueOf(countddd); //返回总天数
}
}
/**
* 得到月数
* @param year 年数差
* @param month 月数差
* @return
*/
public static int getCmm(Integer year,Integer month){
int zmm = 0;
if(month < 0){
zmm = (month + 12)+(year-1)*12;
}else if(month == 0){
zmm = year*12;
}else{
zmm = year*12+month;
}
return zmm;
}
/**
* 改更现在时间
*/
public static Date changeDate(String type, int value) {
Calendar calendar = Calendar.getInstance(TimeZone.getDefault());
if (type.equals("month")) {
calendar.set(Calendar.MONTH, calendar.get(Calendar.MONTH) + value);
} else if (type.equals("date")) {
calendar.set(Calendar.DATE, calendar.get(Calendar.DATE) + value);
}
return calendar.getTime();
}
/**
* 更改时间
*/
public static Date changeDate(Date date, String type, int value) {
if (date != null) {
// Calendar calendar = Calendar.getInstance(TimeZone.getDefault());
Calendar calendar = new GregorianCalendar();
calendar.setTime(date);
// Calendar calendar = Calendar.
if (type.equals("month")) {
calendar.set(Calendar.MONTH, calendar.get(Calendar.MONTH) + value);
} else if (type.equals("date")) {
calendar.set(Calendar.DATE, calendar.get(Calendar.DATE) + value);
} else if (type.endsWith("year")) {
calendar.set(Calendar.YEAR, calendar.get(Calendar.YEAR) + value);
}
return calendar.getTime();
}
return null;
}
/**
* haoxw 比较时间是否在这两个时间点之间
*
* @param time1
* @param time2
* @return
*/
public static boolean checkTime(String time1, String time2) {
Calendar calendar = Calendar.getInstance();
Date date1 = calendar.getTime();
Date date11 = DateUtil.str2Date(DateUtil.date2Str(date1, "yyyy-MM-dd") + " " + time1);// 起始时间
Calendar c = Calendar.getInstance();
c.add(Calendar.DATE, 1);
Date date2 = c.getTime();
Date date22 = DateUtil.str2Date(DateUtil.date2Str(date2, "yyyy-MM-dd") + " " + time2);// 终止时间
Calendar scalendar = Calendar.getInstance();
scalendar.setTime(date11);// 起始时间
Calendar ecalendar = Calendar.getInstance();
ecalendar.setTime(date22);// 终止时间
Calendar calendarnow = Calendar.getInstance();
if (calendarnow.after(scalendar) && calendarnow.before(ecalendar)) {
return true;
} else {
return false;
}
}
/**
* haoxw 比较时间是否在这两个时间点之间
*
* @param date11
* @param date22
* @return
*/
public static boolean checkTime(Date date11, Date date22) {
Calendar scalendar = Calendar.getInstance();
scalendar.setTime(date11);// 起始时间
Calendar ecalendar = Calendar.getInstance();
ecalendar.setTime(date22);// 终止时间
Calendar calendarnow = Calendar.getInstance();
if (calendarnow.after(scalendar) && calendarnow.before(ecalendar)) {
return true;
} else {
return false;
}
}
public static boolean checkDate(String date1, String date2) {
Date date11 = DateUtil.str2Date(date1, "yyyy-MM-dd HH:mm:ss");// 起始时间
Date date22 = DateUtil.str2Date(date2, "yyyy-MM-dd HH:mm:ss");// 终止时间
Calendar scalendar = Calendar.getInstance();
scalendar.setTime(date11);// 起始时间
Calendar ecalendar = Calendar.getInstance();
ecalendar.setTime(date22);// 终止时间
Calendar calendarnow = Calendar.getInstance();
System.out.println(date11.toString());
System.out.println(date22.toString());
System.out.println(scalendar.toString());
System.out.println(ecalendar.toString());
System.out.println(calendarnow.toString());
if (calendarnow.after(scalendar) && calendarnow.before(ecalendar)) {
return true;
} else {
return false;
}
}
/**
* 获取interval天之前的日期
*
* @param interval
* @param starttime
* @param pattern
* @return
*/
public static Date getIntervalDate(String interval, Date starttime, String pattern) {
Calendar temp = Calendar.getInstance();
temp.setTime(starttime);
temp.add(temp.DATE, Integer.parseInt(interval));
SimpleDateFormat sdf = new SimpleDateFormat(pattern);
String shijian = sdf.format(temp.getTime());
return str2Date(shijian);
}
public static Date formatDate(Date date){
SimpleDateFormat bartDateFormat =
new SimpleDateFormat("yyyy-MM-dd");
System.out.println(bartDateFormat.format(date));
SimpleDateFormat bartDateFormat1 =new SimpleDateFormat("yyyy-MM-dd");
try {
Date date1 = bartDateFormat1.parse(bartDateFormat.format(date));
} catch (ParseException e) {
e.printStackTrace();
}
System.out.println(date.getTime());
return date;
}
public static void main(String arf[]) {
/*String time1 = "2009-05-07 19:20:00";
String time2 = "2009-05-08 19:30:00";
DateUtil d = new DateUtil();
System.out.println(d.checkDate(time1, time2));
System.out.println(d.date2Str(new Date()));*/
//System.out.println(d.getIntervalDate("-3", new Date(), DEFAULT_PATTERN));
Calendar calendar = Calendar.getInstance(TimeZone.getDefault());
System.out.println(calendar.toString());
System.out.println(DateUtil.str2Date("20090731","yyyyMMdd"));
System.out.println(DateUtil.getBeforeDate(new Date(),2 ));
System.out.println(DateUtil.DatePattern(new Date()));
SimpleDateFormat bartDateFormat =
new SimpleDateFormat("yyyy-MM-dd");
Date date = new Date();
System.out.println("date;"+bartDateFormat.format(date));
SimpleDateFormat bartDateFormat1 =new SimpleDateFormat("yyyy-MM-dd");
try {
Date date1 = bartDateFormat1.parse(bartDateFormat.format(date));
System.out.println("日期:"+date1);
} catch (ParseException e) {
e.printStackTrace();
}
}
}
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
import java.util.GregorianCalendar;
import java.util.TimeZone;
/**
* 时间处理函数
*
* @20080509 15:50
*/
public class DateUtil {
private static final String DEFAULT_PATTERN = "yyyy-MM-dd HH:mm:ss";
public static final String TIME_YEAR = "yyyy";
public static final String TIME_MONEN = "MM";
public static final String TIME_DAY = "dd";
public static String getDate(String interval, Date starttime, String pattern) {
Calendar temp = Calendar.getInstance(TimeZone.getDefault());
temp.setTime(starttime);
temp.add(temp.MONTH, Integer.parseInt(interval));
SimpleDateFormat sdf = new SimpleDateFormat(pattern);
return sdf.format(temp.getTime());
}
/**
* 将字符串类型转换为时间类型
*
* @return
*/
public static Date str2Date(String str) {
Date d = null;
SimpleDateFormat sdf = new SimpleDateFormat(DEFAULT_PATTERN);
try {
d = sdf.parse(str);
} catch (Exception e) {
e.printStackTrace();
}
return d;
}
public static Date str2Date(String str, String pattern) {
Date d = null;
SimpleDateFormat sdf = new SimpleDateFormat(pattern);
try {
d = sdf.parse(str);
} catch (Exception e) {
e.printStackTrace();
}
return d;
}
/**
* 将时间格式化
*
* @return
*/
public static Date DatePattern(Date date) {
SimpleDateFormat sdf = new SimpleDateFormat(DEFAULT_PATTERN);
try {
String dd = sdf.format(date);
date = str2Date(dd);
} catch (Exception e) {
e.printStackTrace();
}
return date;
}
/**
* 将时间格式化
*/
public static Date DatePattern(Date date, String pattern) {
SimpleDateFormat sdf = new SimpleDateFormat(pattern);
try {
String dd = sdf.format(date);
date = str2Date(dd, pattern);
} catch (Exception e) {
e.printStackTrace();
}
return date;
}
public static String date2Str(Date date) {
SimpleDateFormat sdf = new SimpleDateFormat(DEFAULT_PATTERN);
return sdf.format(date);
}
public static String date2Str(Date date, String format) {
SimpleDateFormat sdf = new SimpleDateFormat(format);
return sdf.format(date);
}
/**
* 获取昨天
*
* @param date
* @return
* @throws Exception
*/
public static Date getLastDate(Date date) {
Calendar calendar = Calendar.getInstance(TimeZone.getDefault());
calendar.setTime(date);
calendar.add(calendar.DATE, -1);
return str2Date(date2Str(calendar.getTime()));
}
/**
* 获取前几天
* @param date
* @return
*/
public static Date getBeforeDate(Date date,int dates) {
Calendar calendar = Calendar.getInstance(TimeZone.getDefault());
calendar.setTime(date);
calendar.add(calendar.DATE, -dates);
return str2Date(date2Str(calendar.getTime()));
}
/**
* 获取上周第一天(周一)
*
* @param date
* @return
* @throws Exception
*/
public static Date getLastWeekStart(Date date) {
Calendar calendar = Calendar.getInstance(TimeZone.getDefault());
calendar.setTime(date);
int i = calendar.get(calendar.DAY_OF_WEEK) - 1;
int startnum = 0;
if (i == 0) {
startnum = 7 + 6;
} else {
startnum = 7 + i - 1;
}
calendar.add(calendar.DATE, -startnum);
return str2Date(date2Str(calendar.getTime()));
}
/**
* 获取上周最后一天(周末)
*
* @param date
* @return
* @throws Exception
*/
public static Date getLastWeekEnd(Date date) {
Calendar calendar = Calendar.getInstance(TimeZone.getDefault());
calendar.setTime(date);
int i = calendar.get(calendar.DAY_OF_WEEK) - 1;
int endnum = 0;
if (i == 0) {
endnum = 7;
} else {
endnum = i;
}
calendar.add(calendar.DATE, -(endnum - 1));
return str2Date(date2Str(calendar.getTime()));
}
/**
* 根据年和月得到天数
* @param num 月
* @param year 年
* @return
*/
public static int getday(int num,int year){
if(num==1 || num==3 || num==5 || num==7 || num==8 || num==10 || num==12){
return 31;
}else if(num==2){
//判断是否为闰年
if(year%400==0 || (year%4==0 && year%100!=0)){
return 29;
}else{
return 28;
}
}else{
return 30;
}
}
/*
* 计算当前日期距离下个月还有多少天
*/
public static int getdaymis(Date time){
int year = Integer.parseInt(
new SimpleDateFormat(TIME_YEAR).format(time));//年
int mm = Integer.parseInt(
new SimpleDateFormat(TIME_MONEN).format(time));//月
int dd = Integer.parseInt(
new SimpleDateFormat(TIME_DAY).format(time));//日
//获取当前年月的总天数
int sdd = getday(mm,year);
return sdd-dd;
}
/**
* 日期转秒数
* @param dateString
* @return
*/
public static long getTime(String dateString) {
long time = 0;
try {
Date ret = null;
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
ret = sdf.parse(dateString);
time = ret.getTime()/1000;
} catch (Exception e) {
}
return time;
}
/**
* 精确计算时间差,精确到日
* @param fistill 起始日期
* @param nowtime 结束日期
* @param type type为1返回年月日(如:2年3个月零5天) 否则返回总的天数
* @return
*/
public static String patienage(Date fistill,Date nowtime,Integer type){
int fyear = Integer.parseInt(
new SimpleDateFormat(TIME_YEAR).format(fistill));//起始年
int fmm = Integer.parseInt(
new SimpleDateFormat(TIME_MONEN).format(fistill));//起始月
int fdd = Integer.parseInt(
new SimpleDateFormat(TIME_DAY).format(fistill));//起始日
int nyear = Integer.parseInt(
new SimpleDateFormat(TIME_YEAR).format(nowtime));//结束年
int nmm = Integer.parseInt(
new SimpleDateFormat(TIME_MONEN).format(nowtime));//结束月
int ndd = Integer.parseInt(
new SimpleDateFormat(TIME_DAY).format(nowtime));//结束日
int cyear = nyear - fyear;
int cmm = nmm - fmm;
int cdd = ndd - fdd;
int zyear = 0;
int zmm = 0;
int zdd = 0;
int countddd = 0; //年月日累计天数
if(cdd<0){
if(cmm<0){
zyear = cyear - 1;
zmm = (cmm + 12)-1;
int dd = getday(zmm,nyear-1);
zdd = dd + cdd;
countddd = zyear*365+zmm*30+zdd;
}else if(cmm==0){
zyear = cyear - 1;
zmm = 12-1;
int dd = getday(zmm,nyear-1);
zdd = dd + cdd;
countddd = zyear*365+zmm*30+zdd;
}else{
zyear = cyear;
zmm = cmm - 1;
int dd = getday(zmm,nyear);
zdd = dd + cdd;
countddd = zyear*365+zmm*30+zdd;
}
}else if(cdd==0){
if(cmm<0){
zyear = cyear - 1;
zmm = cmm + 12;
zdd = 0;
countddd = zyear*365+zmm*30;
}else if(cmm==0){
zyear = cyear;
zmm = 0;
zdd = 0;
countddd = zyear*365+zmm*30;
}else{
zyear = cyear;
zmm = cmm;
zdd = 0;
countddd = zyear*365+zmm*30;
}
}else{
if(cmm<0){
zyear = cyear - 1;
zmm = cmm + 12;
zdd = cdd;
countddd = zyear*365+zmm*30+zdd;
}else if(cmm==0){
zyear = cyear;
zmm = 0;
zdd = cdd;
countddd = zyear*365+zmm*30+zdd;
}else{
zyear = cyear;
zmm = cmm;
zdd = cdd;
countddd = zyear*365+zmm*30+zdd;
}
}
String ptime = null;
if(zdd!=0){
if(zmm!=0){
if(zyear!=0){
ptime = zyear+"年"+zmm+"个月"+"零"+zdd+"天";
}else{
ptime = zmm+"个月"+"零"+zdd+"天";
}
}else{
if(zyear!=0){
ptime = zyear+"年"+"零"+zdd+"天";
}else{
ptime = zdd+"天";
}
}
}else{
if(zmm!=0){
if(zyear!=0){
ptime = zyear+"年"+zmm+"个月";
}else{
ptime = zmm+"个月";
}
}else{
if(zyear!=0){
ptime = zyear+"年";
}else{
ptime = null;
}
}
}
if(type==1){
return ptime; //返回年月日(如:2年3个月零5天)
}else{
return String.valueOf(countddd); //返回总天数
}
}
/**
* 得到月数
* @param year 年数差
* @param month 月数差
* @return
*/
public static int getCmm(Integer year,Integer month){
int zmm = 0;
if(month < 0){
zmm = (month + 12)+(year-1)*12;
}else if(month == 0){
zmm = year*12;
}else{
zmm = year*12+month;
}
return zmm;
}
/**
* 改更现在时间
*/
public static Date changeDate(String type, int value) {
Calendar calendar = Calendar.getInstance(TimeZone.getDefault());
if (type.equals("month")) {
calendar.set(Calendar.MONTH, calendar.get(Calendar.MONTH) + value);
} else if (type.equals("date")) {
calendar.set(Calendar.DATE, calendar.get(Calendar.DATE) + value);
}
return calendar.getTime();
}
/**
* 更改时间
*/
public static Date changeDate(Date date, String type, int value) {
if (date != null) {
// Calendar calendar = Calendar.getInstance(TimeZone.getDefault());
Calendar calendar = new GregorianCalendar();
calendar.setTime(date);
// Calendar calendar = Calendar.
if (type.equals("month")) {
calendar.set(Calendar.MONTH, calendar.get(Calendar.MONTH) + value);
} else if (type.equals("date")) {
calendar.set(Calendar.DATE, calendar.get(Calendar.DATE) + value);
} else if (type.endsWith("year")) {
calendar.set(Calendar.YEAR, calendar.get(Calendar.YEAR) + value);
}
return calendar.getTime();
}
return null;
}
/**
* haoxw 比较时间是否在这两个时间点之间
*
* @param time1
* @param time2
* @return
*/
public static boolean checkTime(String time1, String time2) {
Calendar calendar = Calendar.getInstance();
Date date1 = calendar.getTime();
Date date11 = DateUtil.str2Date(DateUtil.date2Str(date1, "yyyy-MM-dd") + " " + time1);// 起始时间
Calendar c = Calendar.getInstance();
c.add(Calendar.DATE, 1);
Date date2 = c.getTime();
Date date22 = DateUtil.str2Date(DateUtil.date2Str(date2, "yyyy-MM-dd") + " " + time2);// 终止时间
Calendar scalendar = Calendar.getInstance();
scalendar.setTime(date11);// 起始时间
Calendar ecalendar = Calendar.getInstance();
ecalendar.setTime(date22);// 终止时间
Calendar calendarnow = Calendar.getInstance();
if (calendarnow.after(scalendar) && calendarnow.before(ecalendar)) {
return true;
} else {
return false;
}
}
/**
* haoxw 比较时间是否在这两个时间点之间
*
* @param date11
* @param date22
* @return
*/
public static boolean checkTime(Date date11, Date date22) {
Calendar scalendar = Calendar.getInstance();
scalendar.setTime(date11);// 起始时间
Calendar ecalendar = Calendar.getInstance();
ecalendar.setTime(date22);// 终止时间
Calendar calendarnow = Calendar.getInstance();
if (calendarnow.after(scalendar) && calendarnow.before(ecalendar)) {
return true;
} else {
return false;
}
}
public static boolean checkDate(String date1, String date2) {
Date date11 = DateUtil.str2Date(date1, "yyyy-MM-dd HH:mm:ss");// 起始时间
Date date22 = DateUtil.str2Date(date2, "yyyy-MM-dd HH:mm:ss");// 终止时间
Calendar scalendar = Calendar.getInstance();
scalendar.setTime(date11);// 起始时间
Calendar ecalendar = Calendar.getInstance();
ecalendar.setTime(date22);// 终止时间
Calendar calendarnow = Calendar.getInstance();
System.out.println(date11.toString());
System.out.println(date22.toString());
System.out.println(scalendar.toString());
System.out.println(ecalendar.toString());
System.out.println(calendarnow.toString());
if (calendarnow.after(scalendar) && calendarnow.before(ecalendar)) {
return true;
} else {
return false;
}
}
/**
* 获取interval天之前的日期
*
* @param interval
* @param starttime
* @param pattern
* @return
*/
public static Date getIntervalDate(String interval, Date starttime, String pattern) {
Calendar temp = Calendar.getInstance();
temp.setTime(starttime);
temp.add(temp.DATE, Integer.parseInt(interval));
SimpleDateFormat sdf = new SimpleDateFormat(pattern);
String shijian = sdf.format(temp.getTime());
return str2Date(shijian);
}
public static Date formatDate(Date date){
SimpleDateFormat bartDateFormat =
new SimpleDateFormat("yyyy-MM-dd");
System.out.println(bartDateFormat.format(date));
SimpleDateFormat bartDateFormat1 =new SimpleDateFormat("yyyy-MM-dd");
try {
Date date1 = bartDateFormat1.parse(bartDateFormat.format(date));
} catch (ParseException e) {
e.printStackTrace();
}
System.out.println(date.getTime());
return date;
}
public static void main(String arf[]) {
/*String time1 = "2009-05-07 19:20:00";
String time2 = "2009-05-08 19:30:00";
DateUtil d = new DateUtil();
System.out.println(d.checkDate(time1, time2));
System.out.println(d.date2Str(new Date()));*/
//System.out.println(d.getIntervalDate("-3", new Date(), DEFAULT_PATTERN));
Calendar calendar = Calendar.getInstance(TimeZone.getDefault());
System.out.println(calendar.toString());
System.out.println(DateUtil.str2Date("20090731","yyyyMMdd"));
System.out.println(DateUtil.getBeforeDate(new Date(),2 ));
System.out.println(DateUtil.DatePattern(new Date()));
SimpleDateFormat bartDateFormat =
new SimpleDateFormat("yyyy-MM-dd");
Date date = new Date();
System.out.println("date;"+bartDateFormat.format(date));
SimpleDateFormat bartDateFormat1 =new SimpleDateFormat("yyyy-MM-dd");
try {
Date date1 = bartDateFormat1.parse(bartDateFormat.format(date));
System.out.println("日期:"+date1);
} catch (ParseException e) {
e.printStackTrace();
}
}
}
发表评论
-
使用memcached进行并发控制(转)
2015-12-29 14:39 883版权声明:本文为博主 ... -
Lock和Synchronized的不同
2014-10-24 15:46 766在 Java 中线程的状态可以分为:新建(New),运行状 ... -
ClassLoader加载流程
2014-04-16 09:59 673[b]当运行一个程序的时候,JVM启动, 运行bootstar ... -
springmvc请求接收参数的几种方法(转载)
2014-04-14 13:37 1533通过@PathVariabl注解获取路径中传递参数 JAVA ... -
JDK里的设计模式
2014-03-10 09:52 615适配器模式: 用来把一个接口转化成另一个接口。 java ... -
include与jsp:include区别
2014-02-28 15:03 579在jsp中include有两种形式,分别是 <%@ i ... -
DBCP的配置参数
2014-02-25 15:51 740tomcatde DHCP的配置 <Resource d ... -
log4j
2014-01-17 13:56 394public Logger m_log = null; ... -
关于java Date和时区的问题
2013-12-18 11:55 837java2平台为我们提供了丰富的日期时间API。如java.u ... -
hessian异常总结
2013-12-12 17:53 1267版本不兼容 com.caucho.hessian.io.Hes ... -
java异常
2013-09-06 12:01 585java.sql.SQLException: Incorrec ... -
汉字转码的java实现
2013-08-05 17:26 1021package common; import java.ut ... -
验证邮件的有效性
2013-07-30 14:25 1134public static boolean checkEma ... -
优化Servlet配置
2013-04-09 10:31 640[b] 以往每添加一个Servlet就要在web. ... -
纯hessian的部署(转)
2012-11-06 17:44 831Web 服务是通过在 Web 服务器上部署 Servlet 来 ... -
Ehcache的使用
2012-07-27 15:11 852一、 配置文件ehcache.xml <ehcache& ... -
struts2上传文件活动文件名、类型
2012-05-16 08:45 942public class FileUpload { ... -
struts2乱码
2012-05-14 17:36 0Struts2.1.6 StrutsPrepareAndExe ... -
解决struts2过滤器冲突问题
2012-04-27 13:40 0struts2使用FilterDispatcher进行url过 ... -
cron表达式
2012-03-14 15:02 869所在组的定时任务用的quartz,是我第一个用的,今天有同事用 ...
相关推荐
5. **java.time.***(Java 8及以上):包括`LocalDate`、`LocalTime`、`LocalDateTime`等,提供了更强大和直观的日期时间处理。 6. **java.io.File**:文件操作类,可以创建、删除、重命名文件,获取文件属性等。 ...
Java时间工具类是Java开发中不可或缺的一部分,它们提供了一系列方便的方法来处理日期和时间,使得开发者可以更加高效地进行时间相关的操作。在这个简单的DateUtil.java工具类中,我们可以期待找到一些基本但实用的...
通常,这样的库会包含一系列针对特定场景的工具类,如日期时间处理、文件操作、字符串格式化、数据校验等。例如,可能会有一个DateTimeUtils类,提供日期和时间的格式化、比较和转换方法;一个FileUtils类,用于文件...
在Java编程语言中,日期和时间处理是常见且重要的任务。Java提供了多种工具类来帮助开发者处理日期和时间,使得我们可以方便地进行日期计算、格式化以及解析等操作。本篇将围绕Java中的日期工具类和时间工具类展开...
包含"yyyy-MM-dd"、"yyyy-MM-dd HH:mm:ss"、"yyyyMMdd"、"yyyyMMddHHmmss"、"yyyy-MM"、"yyyyMM"等时间格式的转换。 其中: 1.String转Timestamp stringToTimestamp(String dateStr); 2.比较传入时间与当前时间前一...
基本涵盖了各种场景的日期处理需要,包括时间类型转换,获取N天前后,月初月末,某段时间按天拆分等功能,欢迎使用。
Java Office转PDF工具类是Java开发中用于将Office文档转换为PDF格式的一种解决方案。在Java环境中,Aspose是一个流行的库,提供了丰富的API来处理各种办公文档格式,包括Word、Excel、PowerPoint等,并且能够方便地...
Java工具类集合是Java开发中不可或缺的一部分,它们提供了一系列便捷的方法,帮助开发者高效地处理各种常见任务。在Java中,工具类通常被组织在各种包下,如`java.util`、`java.lang`、`java.io`等。下面将详细介绍...
Java操作时间工具类是开发者日常工作中经常会用到的模块,特别是在处理日期和时间相关的业务逻辑时。本工具类主要是为了方便地对日期和时间进行格式化、比较、计算等操作,提高开发效率。下面我们将详细探讨Java中...
数据处理工具类往往涉及集合操作。Java的util包包含了多种集合框架类,如List、Set、Map等。Collections类提供了对这些集合进行操作的方法,如sort、reverse、copy等。此外,Arrays类可以用于排序和填充数组,包括...
《非常强大的Java时间处理工具类——xk-time详解》 在Java编程中,时间处理是一项常见且重要的任务,尤其在处理日历事件、数据分析、定时任务等方面。然而,Java 8之前的日期API设计存在诸多不便,例如线程安全问题...
此外,这份资料可能还包含其他类型的工具类,如Bitmap处理工具类,用于图片的加载、缩放和优化;Date工具类,用于日期和时间的格式化和转换;Dialog工具类,提供自定义对话框的快速创建;还有可能包括Utils类,其中...
本篇文章将深入探讨如何在Java中实现一个用于处理HTTPS请求的工具类。 首先,要实现HTTPS请求,我们需要导入Java的`java.net`和`javax.net.ssl`包,这两个包提供了处理网络连接和SSL/TLS安全协议的类。以下是一些...
本文将详细解析"java开发常用工具类"中的关键知识点,包括日历、时间处理、Excel导出、网络请求、流操作、数据处理、数值计算以及XML和Web工具类。 1. **日历和时间处理**: Java中`java.util.Calendar`和`java....
在Java编程中,工具类(Util Class)是包含各种静态方法的类,这些方法通常用于执行常见的、重复的任务,如字符串处理、数学计算或者集合操作等。这些类不包含任何状态,即没有实例变量,因此它们是线程安全的。在...
在Java编程语言中,工具类(Utility Class)是包含各种静态方法的类,这些方法用于执行特定任务,如数据处理、格式化、计算等。Java提供了丰富的内置工具类,但开发者也经常创建自定义工具类以满足项目需求。标题...
- `java.util`: 这个包中包含了大量工具类,如`ArrayList`, `HashMap`, `LinkedList`等集合框架类,以及`Date`, `Calendar`时间处理类,`Random`随机数生成器等。 - `java.text`: 提供了`SimpleDateFormat`进行...
在Java编程中,这样的工具类通常包含了一系列方法,用于发送、接收和处理短信。下面我们将详细探讨Java短信服务工具类的关键知识点。 1. **SMS协议理解**: 短信服务通常基于GSM 03.40或3GPP TS 23.040标准,这些...
本文将详细解析“java开发常用工具类大全”中涉及的关键知识点,包括但不限于输入字符校验、数据转换、网络操作、加密解密、JSON处理、图像操作以及数据库操作。 1. **输入字符校验类**: 这类工具通常包含对字符...
2. **ImageUtils.java**: 图像处理工具类,可能包含了对图像进行缩放、裁剪、旋转、合并等操作的功能。它可能会利用Java的`javax.imageio`包或者第三方库如Apache Commons Imaging (formerly known as Sanselan)来...