java 时间转换工具_java日期格式转换工具类

packagecom.ace.backoffice.utils;importjava.text.ParseException;importjava.text.SimpleDateFormat;importjava.util.Calendar;importjava.util.Date;importjavax.xml.datatype.DatatypeConfigurationException;importjavax.xml.datatype.DatatypeFactory;importjavax.xml.datatype.XMLGregorianCalendar;public classDateUtils {/*** 将指定字符串转换成日期

*

*@paramdate

* String 日期字符串

*@paramdatePattern

* String 日期格式

*@returnDate*/

public staticjava.util.Date getFormatDate(String date, String datePattern) {

SimpleDateFormat sd= newSimpleDateFormat(datePattern);return sd.parse(date, new java.text.ParsePosition(0));

}/*** 将指定日期对象转换成格式化字符串

*

*@paramdate

* Date XML日期对象

*@paramdatePattern

* String 日期格式

*@returnString*/

public staticString getFormattedString(Date date, String datePattern) {

SimpleDateFormat sd= newSimpleDateFormat(datePattern);returnsd.format(date);

}/*** 将指定XML日期对象转换成格式化字符串

*

*@paramxmlDate

* Date XML日期对象

*@paramdatePattern

* String 日期格式

*@returnString*/

public staticString getFormattedString(XMLGregorianCalendar xmlDate,

String datePattern) {

SimpleDateFormat sd= newSimpleDateFormat(datePattern);

Calendar calendar=xmlDate.toGregorianCalendar();returnsd.format(calendar.getTime());

}/*** 将指定XML日期对象转换成日期对象

*

*@paramxmlDate

* Date XML日期对象

*@paramdatePattern

* String 日期格式

*@returnDate*/

public staticDate xmlGregorianCalendar2Date(XMLGregorianCalendar xmlDate) {returnxmlDate.toGregorianCalendar().getTime();

}public staticString getThisYear() {//获得当前日期

Calendar cldCurrent =Calendar.getInstance();//获得年月日

String strYear =String.valueOf(cldCurrent.get(Calendar.YEAR));returnstrYear;

}public staticXMLGregorianCalendar convert2XMLCalendar(Calendar calendar) {try{

DatatypeFactory dtf=DatatypeFactory.newInstance();returndtf.newXMLGregorianCalendar(

calendar.get(Calendar.YEAR),

calendar.get(Calendar.MONTH)+1,

calendar.get(Calendar.DAY_OF_MONTH),

calendar.get(Calendar.HOUR),

calendar.get(Calendar.MINUTE),

calendar.get(Calendar.SECOND),

calendar.get(Calendar.MILLISECOND),

calendar.get(Calendar.ZONE_OFFSET)/(1000*60));

}catch(DatatypeConfigurationException e) {

e.printStackTrace();return null;

}

}//获取当天时间

public staticjava.sql.Timestamp getNowTime(String dateformat) {

Date now= newDate();

SimpleDateFormat dateFormat= new SimpleDateFormat(dateformat);//可以方便地修改日期格式

String dateString =dateFormat.format(now);

SimpleDateFormat sd= newSimpleDateFormat(dateformat);

Date dateFormt= sd.parse(dateString, new java.text.ParsePosition(0));

java.sql.Timestamp dateTime= newjava.sql.Timestamp(dateFormt

.getTime());returndateTime;//return hehe;

}//获取指定时间

public staticjava.sql.Timestamp getNowNewTime(String date,String dateformat){//Date now = new Date();

SimpleDateFormat dateFormat = new SimpleDateFormat(dateformat);//可以方便地修改日期格式

dateFormat.parse(date, new java.text.ParsePosition(0));//String dateString= dateFormat.format(date);

Date dateFormt= dateFormat.parse(date, new java.text.ParsePosition(0));

java.sql.Timestamp dateTime= newjava.sql.Timestamp(dateFormt.getTime());returndateTime;//return hehe;

}/***@param含有yyyy-MM-dd'T'hh:mm:ss.SSS格式的时间转换.

*@return

*/

public staticString getTFormatString(String tdate) {

SimpleDateFormat format1= new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss.SSS");

String str="";try{

java.util.Date date=format1.parse(tdate);

SimpleDateFormat format2= new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");

str=format2.format(date);

}catch(ParseException e) {

e.printStackTrace();

}returnstr;

}public static voidmain(String[] args) {

SimpleDateFormat sd= new SimpleDateFormat("yyyyMMdd");

String date= "20110202";

System.out.println(sd.parse(date,new java.text.ParsePosition(0)));

System.out.println(getBefore2HourDate());

}//获取当前时间前2个小时的时间。

public staticString getBefore2HourDate(){

SimpleDateFormat df=new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss");

Calendar c=Calendar.getInstance();

c.add(Calendar.HOUR_OF_DAY,-2); //目前時間加3小時

returndf.format(c.getTime());

}/***

*@paramtime1 当前时间

*@paramtime2 比较时间

*@return如果time1比time2大gap分钟,则返回true;*/

public static boolean compareDateTime(Date time1, Date time2, intgap) {return time1.getTime() - time2.getTime() > gap * 60 * 1000;

}

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值