您的位置:首页 > 其它

时间日期工具类

2016-07-12 16:24 465 查看
/**

* Created by 张玉水 on 2016/7/12.

*/

public class TimeUtils {

//毫秒值,转换成距离现在多少时间。
public static String ms2TimeString(long ms){

long currentTimeMillis = System.currentTimeMillis();

long offms = currentTimeMillis - ms;
if (offms<0){
return "Time illegal";
}else {
if (offms<3600*1000){
return offms/1000/60+"分钟前";
}else if(offms<3600L*1000*24){
return offms/1000L/60/60+"小时前";
}else if (offms>=3600L*1000*24 && offms<3600L*1000*24*2){
return "昨天";
}else if (offms>=3600L*1000*24*2 && offms< 3600L*1000*24*365 ){
return offms/1000L/60/60/24+"天前";
}else if (offms>=3600L*1000*24*365){
return offms/1000L/60/60/24/365+"年前";
}

}
return "Time illegal";
}

//将一个时间的字符串 2015-6-7 计算到现在的 X岁X个月
public static String getAge(String birthdayTime){
Date date1 = String2Date(birthdayTime);
SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd");
Date date2 = String2Date(sdf.format(new Date()));

return getResult(date1,date2);

}

public static String getResult(Date d1,Date d2){

if (d1.after(d2)){
return "birthday illegal";
}

Calendar c = Calendar.getInstance();

c.setTime(d1);
int year1 = c.get(Calendar.YEAR);
int month1 = c.get(Calendar.MONTH);

c.setTime(d2);
int year2 = c.get(Calendar.YEAR);
int month2 = c.get(Calendar.MONTH);

int yearResult;
int monthResult;
String result="";
if (month1>=month2){
monthResult=12-(month1-month2);
yearResult=year2-year1-1;
}else {
monthResult=month2-month1;
yearResult=year2-year1;
}
if (yearResult<0){
yearResult=0;
}
if (yearResult!=0&& monthResult!=0){
result=yearResult+"岁"+monthResult+"个月";
}else if (yearResult!=0&& monthResult==0){
result=yearResult+"岁";
}else if (yearResult==0&& monthResult!=0){
result=monthResult+"个月";
}
return result;

}

// 比较两个日期相差多少天
public static int daysOfTwo(Date fDate, Date oDate) {
Calendar aCalendar = Calendar.getInstance();
aCalendar.setTime(fDate);
int day1 = aCalendar.get(Calendar.DAY_OF_YEAR);
aCalendar.setTime(oDate);
int day2 = aCalendar.get(Calendar.DAY_OF_YEAR);
return day2 - day1;
}

private String getDateHourMin(Date date) {
SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm");
String time = format.format(date);

return time;
}

/**
* 字符串转日期
*
* @param str
* @return
*/
@SuppressLint("SimpleDateFormat")
private Date StrToDate(String str) {
SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm");
Date date = null;
try {
date = format.parse(str);
} catch (ParseException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return date;
}

/**
* @author 张玉水
* @date 2016-5-6 下午5:43:46 TODO 将字符串转成date
* @param date
* @return
*/
public static Date String2Date(String date) {
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
try {
return sdf.parse(date);
} catch (ParseException e) {
e.printStackTrace();
}
return null;
}

@SuppressLint("SimpleDateFormat")
private Date StrToHour(String str) {
SimpleDateFormat format = new SimpleDateFormat("HH:mm");
Date date = null;
try {
date = format.parse(str.trim());
} catch (ParseException e) {
e.printStackTrace();
}
return date;
}


}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: