天天看点

java gps时间转换工具_简单的时间格式转换工具类(java)

importjava.sql.Timestamp;importjava.text.ParseException;importjava.text.SimpleDateFormat;importjava.util.Calendar;importjava.util.Date;importjava.util.Locale;importjava.util.TimeZone;

public classDateUtils {

public staticDate getCurDate() {return newDate();

}

public staticTimestamp getTimestamp(Date date) {if (date == null)return null;else{return newTimestamp(date.getTime());

}

}

public staticTimestamp getCurTimestamp() {return new Timestamp(newDate().getTime());

}

public staticDate formateDate(String dateStr) {if (dateStr == null || "".equals(dateStr.trim()))return null;

SimpleDateFormat sdf= new SimpleDateFormat("yyyy-MM-dd");try{

Date date=sdf.parse(dateStr);returndate;

}catch(ParseException e) {

e.printStackTrace();

}return null;

}

public staticTimestamp formateTimeStamp(String tsStr) {if (tsStr == null || "".equals(tsStr.trim()))return null;try{

Timestamp ts=Timestamp.valueOf(tsStr.trim());returnts;

}catch(Exception e) {

e.printStackTrace();

}return null;

}

public staticString getDateStr(Date date) {if (date == null)return null;

SimpleDateFormat sdf= new SimpleDateFormat("yyyy-MM-dd");

String dateStr=sdf.format(date);returndateStr;

}public staticString getTime2Str(Date date){if (date == null)return null;

SimpleDateFormat sdf= new SimpleDateFormat("HH:mm:ss");

String dateStr=sdf.format(date);returndateStr;

}

public staticString getTimestampStr(Timestamp ts) {if (ts == null)return null;

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

String tsStr=sdf.format(ts);returntsStr;

}

public staticString formatTimestamp2Str(Timestamp ts) {if (ts == null)return null;

SimpleDateFormat sdf= new SimpleDateFormat("MM-dd HH:mm");

String tsStr=sdf.format(ts);returntsStr;

}

public staticString formatTimestamp2Str(Date ts) {if (ts == null)return null;

SimpleDateFormat sdf= new SimpleDateFormat("MM-dd HH:mm");

String tsStr=sdf.format(ts);returntsStr;

}

public staticString getTimestampStr(Date date) {if (date == null)return null;

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

String tsStr=sdf.format(date);returntsStr;

}

public staticTimestamp getStartTimestampByDate(Date date) {if (date == null)return null;

Calendar c1=Calendar.getInstance();

c1.setTime(date);

c1.set(Calendar.HOUR_OF_DAY,0);

c1.set(Calendar.MINUTE,0);

c1.set(Calendar.SECOND,0);

c1.set(Calendar.MILLISECOND,0);return newTimestamp(c1.getTimeInMillis());

}

public staticTimestamp getEndTimestampByDate(Date date) {if (date == null)return null;

Calendar c1=Calendar.getInstance();

c1.setTime(date);

c1.set(Calendar.HOUR_OF_DAY,23);

c1.set(Calendar.MINUTE,59);

c1.set(Calendar.SECOND,59);

c1.set(Calendar.MILLISECOND,999);return newTimestamp(c1.getTimeInMillis());

}

public staticDate dateAdd(Date curDate, Integer count) {if (curDate == null || count == null)return null;return new Date(curDate.getTime() + count * 24 * 60 * 60 * 1000L);

}

public staticTimestamp timeAddSecond(Timestamp curTimestamp, Integer count) {if (curTimestamp == null || count == null)return null;return new Timestamp(curTimestamp.getTime() + count * 1000);

}

public static intdateDiffMont(Date curDate, Date oldDate) {if (curDate == null || oldDate == null)return 0;if (oldDate.getTime() >=curDate.getTime()) {return 0;

}

Calendar c=Calendar.getInstance();

c.setTime(curDate);int curYear =c.get(Calendar.YEAR);int curMonth =c.get(Calendar.MONTH);

c.setTime(oldDate);int oldYear =c.get(Calendar.YEAR);int oldMonth =c.get(Calendar.MONTH);intresult;if (curYear ==oldYear) {

result= curMonth - oldMonth;//两个日期相差几个月,即月份差

} else{

result= 12 * (curYear - oldYear) + curMonth - oldMonth;//两个日期相差几个月,即月份差

}returnresult;

}

public static booleancompare(Date date1, Date date2) {if (date1 == null || date2 == null)return false;

Calendar c1=Calendar.getInstance();

c1.setTime(date1);

c1.set(Calendar.HOUR_OF_DAY,0);

c1.set(Calendar.MINUTE,0);

c1.set(Calendar.SECOND,0);

c1.set(Calendar.MILLISECOND,0);

Calendar c2=Calendar.getInstance();

c2.setTime(date2);

c2.set(Calendar.HOUR_OF_DAY,0);

c2.set(Calendar.MINUTE,0);

c2.set(Calendar.SECOND,0);

c2.set(Calendar.MILLISECOND,0);if (c1.getTimeInMillis() >=c2.getTimeInMillis())return true;else

return false;

}

public staticTimestamp getFirstDayOfMonth(Date curDate) {if (curDate == null)return null;

Calendar c=Calendar.getInstance();

c.setTime(curDate);

c.set(Calendar.HOUR_OF_DAY,0);

c.set(Calendar.MINUTE,0);

c.set(Calendar.SECOND,0);

c.set(Calendar.MILLISECOND,0);

c.set(Calendar.DATE,1);//设为当前月的1号

System.out.println(newTimestamp(c.getTimeInMillis()));return newTimestamp(c.getTimeInMillis());

}

public staticTimestamp getFirstDayOfNextMonth(Date curDate) {if (curDate == null)return null;

Calendar c=Calendar.getInstance();

c.setTime(curDate);

c.set(Calendar.HOUR_OF_DAY,0);

c.set(Calendar.MINUTE,0);

c.set(Calendar.SECOND,0);

c.set(Calendar.MILLISECOND,0);

c.set(Calendar.DATE,1);//设为当前月的1号

c.add(Calendar.MONTH, 1);// System.out.println(newTimestamp(c.getTimeInMillis()));return newTimestamp(c.getTimeInMillis());

}

public staticTimestamp getFirstDayOfYear(String yearStr) {if (yearStr == null)return null;

Calendar c=Calendar.getInstance();

c.set(Calendar.YEAR,newInteger(yearStr));

c.set(Calendar.MONTH,0); // c.set(Calendar.DATE, 1);

c.set(Calendar.HOUR_OF_DAY,0);

c.set(Calendar.MINUTE,0);

c.set(Calendar.SECOND,0);

c.set(Calendar.MILLISECOND,0);

System.out.println(newTimestamp(c.getTimeInMillis()));return newTimestamp(c.getTimeInMillis());

}

public staticTimestamp getLastDayOfYear(String yearStr) {if (yearStr == null)return null;

Calendar c=Calendar.getInstance();

c.set(Calendar.YEAR,newInteger(yearStr));

c.set(Calendar.MONTH,11); // c.set(Calendar.DATE, 31);

c.set(Calendar.HOUR_OF_DAY,23);

c.set(Calendar.MINUTE,59);

c.set(Calendar.SECOND,59);

c.set(Calendar.MILLISECOND,999);

System.out.println(newTimestamp(c.getTimeInMillis()));return newTimestamp(c.getTimeInMillis());

}

public staticTimestamp getFirstDayOfQuarter(String yearStr, String qurStr) {if (yearStr == null)return null;if (qurStr == null)return null;

String qurTmp= "";if ("1".equals(qurStr))

qurTmp= "0";else if ("2".equals(qurStr))

qurTmp= "3";else if ("3".equals(qurStr))

qurTmp= "6";else if ("4".equals(qurStr))

qurTmp= "9";

Calendar c=Calendar.getInstance();

c.set(Calendar.YEAR,newInteger(yearStr));

c.set(Calendar.MONTH,new Integer(qurTmp)); // c.set(Calendar.DATE, 1);

c.set(Calendar.HOUR_OF_DAY,0);

c.set(Calendar.MINUTE,0);

c.set(Calendar.SECOND,0);

c.set(Calendar.MILLISECOND,0);

System.out.println(newTimestamp(c.getTimeInMillis()));return newTimestamp(c.getTimeInMillis());

}

public staticTimestamp getFirstDayOfMonth(String yearStr, String monthStr) {if (yearStr == null)return null;if (monthStr == null)return null;

Calendar c=Calendar.getInstance();

c.set(Calendar.YEAR,newInteger(yearStr));

c.set(Calendar.MONTH,new Integer(monthStr) - 1); // c.set(Calendar.DATE, 1);

c.set(Calendar.HOUR_OF_DAY,0);

c.set(Calendar.MINUTE,0);

c.set(Calendar.SECOND,0);

c.set(Calendar.MILLISECOND,0);

System.out.println(newTimestamp(c.getTimeInMillis()));return newTimestamp(c.getTimeInMillis());

}

public staticTimestamp getFirstDayOfPreMonth(Timestamp endTime) {

Calendar c=Calendar.getInstance();

c.setTime(newDate(endTime.getTime()));

System.out.println(c.getTime());int y =c.get(Calendar.YEAR);int m = c.get(Calendar.MONTH) - 1;

System.out.println(y);

System.out.println(m);if (m == -1) {

y= y - 1;

m= 11;

}

c.set(Calendar.YEAR, y);

c.set(Calendar.MONTH, m);return newTimestamp(c.getTimeInMillis());

}

public staticTimestamp getPrevYearFirstDayOfMonth(Date curDate) {if (curDate == null)return null;

Calendar c=Calendar.getInstance();

c.setTime(curDate);

c.set(Calendar.HOUR_OF_DAY,0);

c.set(Calendar.MINUTE,0);

c.set(Calendar.SECOND,0);

c.set(Calendar.MILLISECOND,0);

c.set(Calendar.DATE,1);//设为当前月的1号

c.add(Calendar.YEAR, -1);// System.out.println(newTimestamp(c.getTimeInMillis()));return newTimestamp(c.getTimeInMillis());

}

public staticTimestamp getPrevYearFirstDayOfNextMonth(Date curDate) {if (curDate == null)return null;

Calendar c=Calendar.getInstance();

c.setTime(curDate);

c.set(Calendar.HOUR_OF_DAY,0);

c.set(Calendar.MINUTE,0);

c.set(Calendar.SECOND,0);

c.set(Calendar.MILLISECOND,0);

c.set(Calendar.DATE,1);//设为当前月的1号

c.add(Calendar.MONTH, 1);// c.add(Calendar.YEAR, -1);// System.out.println(newTimestamp(c.getTimeInMillis()));return newTimestamp(c.getTimeInMillis());

}

public staticString cvtTimestampToStr(Timestamp tmp) {if (tmp == null)return "";

SimpleDateFormat sdf= new SimpleDateFormat("yyyy.MM");

String timeStr= sdf.format(newDate(tmp.getTime()));

System.out.println(timeStr);returntimeStr;

}

public staticString cvtDateToStr(Date tmp) {if (tmp == null)return "";

SimpleDateFormat sdf= new SimpleDateFormat("yyyy.MM");

String timeStr=sdf.format(tmp);

System.out.println(timeStr);returntimeStr;

}

public staticInteger diffTimestamp4Second(Timestamp startTime,

Timestamp endTime) {if (startTime == null || endTime == null)return 0;

Integer diff= newLong(

(endTime.getTime()- startTime.getTime()) / 1000).intValue();returndiff;

}

public staticString getCurrentYYYYMMDDHHMMSS() {

SimpleDateFormat formatter= new SimpleDateFormat("yyyy-MM-dd HH:mm:ss", Locale.US);

formatter.setTimeZone(TimeZone.getTimeZone("GMT+8"));

Date currTime= newDate();

String thisTime= newString(formatter.format(currTime));returnthisTime;

}

public staticString getYYYYMMDDHHMMSS(Date inputDate) {

SimpleDateFormat formatter= new SimpleDateFormat("yyyy-MM-dd HH:mm:ss", Locale.US);

formatter.setTimeZone(TimeZone.getTimeZone("GMT+8"));

String thisTime= newString(formatter.format(inputDate));returnthisTime;

}

public staticString getCurrentYYYYMMDDHHMMssSSS() {

SimpleDateFormat formatter= new SimpleDateFormat("yyyy-MM-ddHHmmssSSS", Locale.US);

formatter.setTimeZone(TimeZone.getTimeZone("GMT+8"));

Date currTime= newDate();

String thisTime= newString(formatter.format(currTime));returnthisTime;

}

public staticString getCurrentYYYYMMDDHHMMssSSSFormat() {

SimpleDateFormat formatter= new SimpleDateFormat("yyyyMMddHHmmssSSS", Locale.US);

formatter.setTimeZone(TimeZone.getTimeZone("GMT+8"));

Date currTime= newDate();

String thisTime= newString(formatter.format(currTime));returnthisTime;

}

public staticString getCurrentYYYYMMDDFormat() {

SimpleDateFormat formatter= new SimpleDateFormat("yyyyMMdd", Locale.US);

formatter.setTimeZone(TimeZone.getTimeZone("GMT+8"));

Date currTime= newDate();

String thisTime= newString(formatter.format(currTime));returnthisTime;

}

public staticString getCurrentYYYYMMDD() {

SimpleDateFormat formatter= new SimpleDateFormat("yyyy-MM-dd", Locale.US);

formatter.setTimeZone(TimeZone.getTimeZone("GMT+8"));

Date currTime= newDate();

String thisTime= newString(formatter.format(currTime));returnthisTime;

}

public staticString getCurrent_yyyyMMddHHmmss() {

SimpleDateFormat formatter= new SimpleDateFormat("yyyyMMddHHmmss", Locale.US);

formatter.setTimeZone(TimeZone.getTimeZone("GMT+8"));

Date currTime= newDate();

String thisTime= newString(formatter.format(currTime));returnthisTime;

}

public staticString getyMdHms(String str){

StringBuffer sb=newStringBuffer();

String s=str.trim();if(!s.isEmpty()){if(s.length()>3){

sb.append(s.substring(0, 4));

}if(s.length()>5){

sb.append("-");

sb.append(s.substring(4, 6));

}if(s.length()>7){

sb.append("-");

sb.append(s.substring(6, 8));

}if(s.length()>9){

sb.append(" ");

sb.append(s.substring(8, 10));

}if(s.length()>11){

sb.append(":");

sb.append(s.substring(10, 12));

}if(s.length()>13){

sb.append(":");

sb.append(s.substring(12, 14));

}

}returnsb.toString();

}

}