java 当天日期 dateutil_java 日期工具类 DateUtil

package com.spider.util;

import java.sql.Timestamp;

import java.text.ParsePosition;

import java.text.SimpleDateFormat;

import java.util.Calendar;

import java.util.GregorianCalendar;

import java.util.Locale;

public class DateUtil {

public static final String CHS_DATETIME_FORMAT_MASK = "yyyy-MM-dd HH:mm:ss";

public static final String CHS_DATE_FORMAT_MASK = "yyyy-MM-dd";

public static int getCurrentYear() {

return Calendar.getInstance().get(Calendar. YEAR);

}

public static java.util.Date getCurrentUtilDate() {

return Calendar.getInstance().getTime();

}

public static java.sql.Date getCurrentSqlDate() {

return new java.sql.Date(getCurrentUtilDate ().getTime());

}

public static java.sql.Timestamp getCurrentTimestamp() {

return new java.sql.Timestamp(getCurrentUtilDate ().getTime());

}

public static java.sql.Timestamp utilDateToTimestamp(java.util.Date date) {

if (date != null) {

return new java.sql.Timestamp(date.getTime());

}

return null ;

}

public static java.util.Date timestampToUtilDate(java.sql.Timestamp timestamp) {

if (timestamp != null) {

return new java.util.Date(timestamp.getTime());

}

return null ;

}

public static java.sql.Date utilDateToSqlDate(java.util.Date date) {

if (date != null) {

return new java.sql.Date(date.getTime());

}

return null ;

}

public static boolean isDateFormat(String strDate, String pattern) {

return strToUtilDate( strDate, pattern) != null;

}

public static java.util.Date strToUtilDate(String strDate) {

return strToUtilDate( strDate, DateUtil. CHS_DATETIME_FORMAT_MASK);

}

public static java.util.Date strToUtilDate(String strDate, String pattern) {

if (!StringUtil.isEmpty( strDate)) {

SimpleDateFormat smf = new SimpleDateFormat(pattern , Locale.US);

ParsePosition pos = new ParsePosition(0);

smf.setLenient( false);

return smf .parse(strDate , pos );

}

return null ;

}

public static java.sql.Date strToSqlDate(String strDate) {

return utilDateToSqlDate( strToUtilDate(strDate, DateUtil.CHS_DATE_FORMAT_MASK ));

}

public static java.sql.Date strToSqlDate(String strDate, String pattern) {

return utilDateToSqlDate( strToUtilDate(strDate, pattern));

}

public static Timestamp strToTimestamp(String strDate) {

java.util.Date date = strToUtilDate(strDate);

return utilDateToTimestamp( date);

}

public static Timestamp strToTimestamp(String strDate, String pattern) {

java.util.Date date = strToUtilDate(strDate, pattern);

return utilDateToTimestamp( date);

}

public static boolean isWeekEnd(java.util.Date strDate) {

if (strDate == null)

return false ;

boolean bRtn = false;

int day_of_week = 1;

Calendar cal = Calendar. getInstance();

cal.setTime( strDate);

day_of_week = cal .get(Calendar.DAY_OF_WEEK);

if (day_of_week == Calendar.SUNDAY || day_of_week == Calendar.SATURDAY ) {

bRtn = true;

}

return bRtn ;

}

public static int getLastDayOfMonth(java.util.Date date) {

int lastDay ;

Calendar cal = Calendar. getInstance();

cal.setTime( date);

int month = cal .get(Calendar.MONTH);

int year = cal .get(Calendar.YEAR);

boolean isLeapYear = ((GregorianCalendar) cal).isLeapYear( year);

if (month == 1 || month == 3 || month == 5 || month == 7 || month == 8 || month == 10 || month == 12) {

lastDay = 31;

} else if (month == 4 || month == 6 || month == 9 || month == 11) {

lastDay = 31;

} else if (month == 2 && isLeapYear) {

lastDay = 29;

} else {

lastDay = 28;

}

return lastDay ;

}

public static final Timestamp getTimeAfter(Timestamp date, int field , int amount) {

Calendar cal = Calendar. getInstance();

cal.setTime( date);

cal.add( field, amount);

return utilDateToTimestamp( cal.getTime());

}

public static final Timestamp getTimeBefore(Timestamp date, int field , int amount) {

return getTimeAfter( date, field, - amount);

}

public static final java.sql.Date getDateAfter(java.sql.Date date, int field, int amount ) {

Calendar cal = Calendar. getInstance();

cal.setTime( date);

cal.add( field, amount);

return utilDateToSqlDate( cal.getTime());

}

public static final java.sql.Date getDateBefore(java.sql.Date date, int field, int amount ) {

return getDateAfter( date, field, - amount);

}

public static final java.sql.Date getNextDay(java.sql.Date date) {

return getDateAfter( date, Calendar. DAY_OF_YEAR, 1);

}

public static final java.sql.Date getPreviousDay(java.sql.Date date) {

return getDateBefore( date, Calendar. DAY_OF_YEAR, 1);

}

public static final java.util.Date getDate(java.util.Date date) {

Calendar cal = Calendar. getInstance();

cal.setTime( date);

cal.set(Calendar. AM_PM, Calendar.AM);

cal.set(Calendar. HOUR, 0);

cal.set(Calendar. MINUTE, 0);

cal.set(Calendar. SECOND, 0);

cal.set(Calendar. MILLISECOND, 0);

return cal .getTime();

}

public static final java.sql.Timestamp getDate(java.sql.Timestamp origTs) {

java.sql.Timestamp newTs = null;

Calendar c = Calendar. getInstance();

c.setTime( origTs);

c.set(Calendar. SECOND, 0);

c.set(Calendar. HOUR_OF_DAY, 0);

c.set(Calendar. MINUTE, 0);

c.set(Calendar. MILLISECOND, 0);

newTs = new java.sql.Timestamp(c .getTime().getTime());

return newTs ;

}

public static String toString(java.sql.Timestamp timestamp, String pattern) {

if (StringUtil.isEmpty( pattern))

pattern = DateUtil. CHS_DATE_FORMAT_MASK;

SimpleDateFormat sdf = new SimpleDateFormat(pattern , Locale.US);

String dateString = null ;

if (timestamp != null)

dateString = sdf .format(timestamp );

return dateString ;

}

public static String toString(java.util.Date date, String pattern) {

if (StringUtil.isEmpty( pattern))

pattern = DateUtil. CHS_DATE_FORMAT_MASK;

SimpleDateFormat sdf = new SimpleDateFormat(pattern , Locale.US);

String dateString = null ;

if (date != null)

dateString = sdf .format(date );

return dateString ;

}

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值