很實(shí)用的Android日期計(jì)算類
分享一個(gè)使用較方便的日期計(jì)算類:
package com.utils.datecount;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.GregorianCalendar;
public class DateCount {
/**
* datelevel 0為7天內(nèi),1為7到15天,2為15天以上
*/
public static int datelevel = 0;
public static int positionweek = -1;
public static int position2week = -1;
/**
* 獲取與今天時(shí)間差
* @param endTime
* @return
*/
public static double countDate(String startTime) {
Date curDate = new Date(System.currentTimeMillis());// 獲取當(dāng)前時(shí)間
SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd");// 輸入日期的格式
Date date = null;
try {
date = simpleDateFormat.parse(startTime);
if (date == null) return 0;
} catch (java.text.ParseException e) {
return 0;
// e.printStackTrace();
}
GregorianCalendar cal1 = new GregorianCalendar();
GregorianCalendar cal2 = new GregorianCalendar();
cal1.setTime(date);
cal2.setTime(curDate);
double dayCount = (cal2.getTimeInMillis() - cal1.getTimeInMillis()) / (1000 * 3600 * 24);// 從間隔毫秒變成間隔天數(shù)
return dayCount;
}
}
Android日期格式化工具類:
package com.utils.tools;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
import android.text.TextUtils;
import android.text.format.DateFormat;
/**
* 日期格式化工具類
*
* @author Harryxu
*
*/
public class DateUtil {
public static Date convert2Date(String format, String dateStr) {
Date date = null;
try {
if (TextUtils.isEmpty(format)) format = "yyyy-MM-dd HH:mm:ss";
return new java.sql.Date(new SimpleDateFormat(format).parse(dateStr).getTime());
} catch (IllegalArgumentException e) {
e.printStackTrace();
} catch (Exception e) {
e.printStackTrace();
}
return date;
}
public static CharSequence formatDate(String format, String dateStr) {
Date date = null;
try {
date = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").parse(dateStr);
} catch (IllegalArgumentException e) {
e.printStackTrace();
} catch (Exception e) {
e.printStackTrace();
}
if (date == null) date = new Date();
if (TextUtils.isEmpty(format)) format = "yyyy-MM-dd";
return DateFormat.format(format, date);
}
/**
* 根據(jù)偏量值取得傳入時(shí)間的前后天數(shù)
*
* @param date
* @param offset 時(shí)間偏量值
* @return
*/
public static Date getNextPreDay(Date date, int offset) {
Calendar calendar = Calendar.getInstance();
calendar.setTime(date);
calendar.add(Calendar.DAY_OF_MONTH, offset);
date = calendar.getTime();
return date;
}
public static int getDays(Date date1, Date date2) {
Date kaishi = date1, jieshu = date2;
if (date1.compareTo(date2) > 0) {
kaishi = date2;
jieshu = date1;
}
long diff = jieshu.getTime() - kaishi.getTime();
float days = diff / 24f / 60 / 60 / 1000;
return (int) ((days - (int) days) >= 0 ? (days + 1) : days);
}
public static String addMinites( String time, int addminite){
SimpleDateFormat myFormatter = new SimpleDateFormat("HH:mm");
Calendar totime = Calendar.getInstance();
java.util.Date date = null;
try {
date = myFormatter.parse(time);
} catch (ParseException e) {
e.printStackTrace();
}
if (date == null) return null;
totime.setTime(date);
totime.add(Calendar.MINUTE, addminite);
date = totime.getTime();
return myFormatter.format(date);
}
}
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
- 解析android中系統(tǒng)日期時(shí)間的獲取
- android獲取時(shí)間差的方法
- Android調(diào)用系統(tǒng)時(shí)間格式顯示時(shí)間信息
- Android中日期與時(shí)間設(shè)置控件用法實(shí)例
- Android日期時(shí)間格式國(guó)際化的實(shí)現(xiàn)代碼
- Android開(kāi)發(fā)中日期工具類DateUtil完整實(shí)例
- Android開(kāi)發(fā)之時(shí)間日期操作實(shí)例
- Android仿iPhone日期時(shí)間選擇器詳解
- Android開(kāi)發(fā)中DatePicker日期與時(shí)間控件實(shí)例代碼
- Android編程實(shí)現(xiàn)將時(shí)間轉(zhuǎn)化成幾分鐘前、幾天前等形式的工具類
相關(guān)文章
Android 幾種屏幕間跳轉(zhuǎn)的跳轉(zhuǎn)Intent Bundle
這篇文章主要介紹了Android 幾種屏幕間跳轉(zhuǎn)的跳轉(zhuǎn)Intent Bundle,有需要的朋友可以參考一下2013-12-12
Android編程實(shí)現(xiàn)只顯示圖片一部分的方法
這篇文章主要介紹了Android編程實(shí)現(xiàn)只顯示圖片一部分的方法,涉及Android針對(duì)圖片的局部顯示操作技巧,需要的朋友可以參考下2016-10-10
Android room數(shù)據(jù)庫(kù)使用詳解
這篇文章主要介紹了Android room數(shù)據(jù)庫(kù)使用,本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2021-11-11
Android逐幀動(dòng)畫實(shí)現(xiàn)代碼
這篇文章主要為大家詳細(xì)介紹了Android逐幀動(dòng)畫實(shí)現(xiàn)代碼,可以通過(guò)xml或java代碼實(shí)現(xiàn),文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-01-01
Android Okhttp請(qǐng)求查詢購(gòu)物車的實(shí)例代碼
下面小編就為大家分享一篇Android Okhttp請(qǐng)求查詢購(gòu)物車的實(shí)例代碼,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2018-01-01
Android播放assets文件里視頻文件相關(guān)問(wèn)題分析
這篇文章主要介紹了Android播放assets文件里視頻文件相關(guān)問(wèn)題分析,結(jié)合Android播放assets文件出現(xiàn)錯(cuò)誤的實(shí)際問(wèn)題給出了原因分析與解決方法參考,需要的朋友可以參考下2016-08-08
Android實(shí)現(xiàn)截圖分享qq 微信功能
在日常生活中,經(jīng)常用到qq,微信截圖分享功能,今天小編通過(guò)本文給大家介紹Android實(shí)現(xiàn)截圖分享qq 微信功能,具體實(shí)現(xiàn)代碼大家參考下本文2017-12-12

