很实用的Android日期计算类
分享一个使用较方便的日期计算类:
packagecom.utils.datecount;
importjava.text.SimpleDateFormat;
importjava.util.Date;
importjava.util.GregorianCalendar;
publicclassDateCount{
/**
*datelevel0为7天内,1为7到15天,2为15天以上
*/
publicstaticintdatelevel=0;
publicstaticintpositionweek=-1;
publicstaticintposition2week=-1;
/**
*获取与今天时间差
*@paramendTime
*@return
*/
publicstaticdoublecountDate(StringstartTime){
DatecurDate=newDate(System.currentTimeMillis());//获取当前时间
SimpleDateFormatsimpleDateFormat=newSimpleDateFormat("yyyy-MM-dd");//输入日期的格式
Datedate=null;
try{
date=simpleDateFormat.parse(startTime);
if(date==null)return0;
}catch(java.text.ParseExceptione){
return0;
//e.printStackTrace();
}
GregorianCalendarcal1=newGregorianCalendar();
GregorianCalendarcal2=newGregorianCalendar();
cal1.setTime(date);
cal2.setTime(curDate);
doubledayCount=(cal2.getTimeInMillis()-cal1.getTimeInMillis())/(1000*3600*24);//从间隔毫秒变成间隔天数
returndayCount;
}
}
Android日期格式化工具类:
packagecom.utils.tools;
importjava.text.ParseException;
importjava.text.SimpleDateFormat;
importjava.util.Calendar;
importjava.util.Date;
importandroid.text.TextUtils;
importandroid.text.format.DateFormat;
/**
*日期格式化工具类
*
*@authorHarryxu
*
*/
publicclassDateUtil{
publicstaticDateconvert2Date(Stringformat,StringdateStr){
Datedate=null;
try{
if(TextUtils.isEmpty(format))format="yyyy-MM-ddHH:mm:ss";
returnnewjava.sql.Date(newSimpleDateFormat(format).parse(dateStr).getTime());
}catch(IllegalArgumentExceptione){
e.printStackTrace();
}catch(Exceptione){
e.printStackTrace();
}
returndate;
}
publicstaticCharSequenceformatDate(Stringformat,StringdateStr){
Datedate=null;
try{
date=newSimpleDateFormat("yyyy-MM-ddHH:mm:ss").parse(dateStr);
}catch(IllegalArgumentExceptione){
e.printStackTrace();
}catch(Exceptione){
e.printStackTrace();
}
if(date==null)date=newDate();
if(TextUtils.isEmpty(format))format="yyyy-MM-dd";
returnDateFormat.format(format,date);
}
/**
*根据偏量值取得传入时间的前后天数
*
*@paramdate
*@paramoffset时间偏量值
*@return
*/
publicstaticDategetNextPreDay(Datedate,intoffset){
Calendarcalendar=Calendar.getInstance();
calendar.setTime(date);
calendar.add(Calendar.DAY_OF_MONTH,offset);
date=calendar.getTime();
returndate;
}
publicstaticintgetDays(Datedate1,Datedate2){
Datekaishi=date1,jieshu=date2;
if(date1.compareTo(date2)>0){
kaishi=date2;
jieshu=date1;
}
longdiff=jieshu.getTime()-kaishi.getTime();
floatdays=diff/24f/60/60/1000;
return(int)((days-(int)days)>=0?(days+1):days);
}
publicstaticStringaddMinites(Stringtime,intaddminite){
SimpleDateFormatmyFormatter=newSimpleDateFormat("HH:mm");
Calendartotime=Calendar.getInstance();
java.util.Datedate=null;
try{
date=myFormatter.parse(time);
}catch(ParseExceptione){
e.printStackTrace();
}
if(date==null)returnnull;
totime.setTime(date);
totime.add(Calendar.MINUTE,addminite);
date=totime.getTime();
returnmyFormatter.format(date);
}
}
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持毛票票。