public class DateUtils {
/**
* 返回unix时间戳 (1970年至今的秒数)
*
* @return
*/
public static long getUnixStamp() {
return System.currentTimeMillis() / 1000;
}
/**
* 得到昨天的日期
*
* @return
*/
public static String getHourDate(long timeStamp) {
SimpleDateFormat sdf = new SimpleDateFormat("HH:mm");
String date = sdf.format(timeStamp * 1000);
return date;
}
/**
* 得到昨天的日期
*
* @return
*/
public static String getYestoryDate() {
Calendar calendar = Calendar.getInstance();
calendar.add(Calendar.DATE, -1);
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
String yestoday = sdf.format(calendar.getTime());
return yestoday;
}
/**
* 得到今天的日期
*
* @return
*/
public static String getTodayDate() {
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
String date = sdf.format(new Date());
return date;
}
/**
* 时间戳转化为时间格式
*
* @param timeStamp
* @return
*/
public static String timeStampToStr(long timeStamp) {
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String date = sdf.format(timeStamp * 1000);
return date;
}
/**
* 得到日期 yyyy-MM-dd
*
* @param timeStamp 时间戳
* @return
*/
public static String formatDate(long timeStamp) {
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
String date = sdf.format(timeStamp * 1000);
return date;
}
/**
* 获取时间
* @param date
* @return
*/
@SuppressLint("SimpleDateFormat")
public static String getDate(Date date) {
SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd");
return format.format(date);
}
/**
* 得到时间 HH:mm:ss
*
* @param timeStamp 时间戳
* @return
*/
public static String getTime(long timeStamp) {
String time = null;
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String date = sdf.format(timeStamp * 1000);
String[] split = date.split("\\s");
if (split.length > 1) {
time = split[1];
}
return time;
}
/**
* 将一个时间戳转换成提示性时间字符串,如刚刚,1秒前
*
* @param timeStamp
* @return
*/
public static int convertTimeToFormat(long timeStamp) {
long curTime = System.currentTimeMillis() / (long) 1000;
long time = curTime - timeStamp;
switch (convertTime(timeStamp)) {
case 0:
break;
case 1:
return (int) (time / 60);
case 2:
return (int) (time / 3600);
case 3:
return (int) (time / 3600 / 24);
case 4:
return (int) (time / 3600 / 24 / 30);
case 5:
return (int) (time / 3600 / 24 / 30 / 12);
default:
}
return -1;
}
/**
* 将一个时间戳转换成提示性时间字符串,如刚刚,1秒前
* <p/>
* 0:刚刚
* 1:分钟前
* 2:小时前
* 3:天前
* 4:个月前
* 5:年前
*
* @param timeStamp
* @return
*/
public static int convertTime(long timeStamp) {
long curTime = System.currentTimeMillis() / (long) 1000;
long time = curTime - timeStamp;
if (time < 60 && time >= 0) {
return 0;
} else if (time >= 60 && time < 3600) {
return 1;
} else if (time >= 3600 && time < 3600 * 24) {
return 2;
} else if (time >= 3600 * 24 && time < 3600 * 24 * 30) {
return 3;
} else if (time >= 3600 * 24 * 30 && time < 3600 * 24 * 30 * 12) {
return 4;
} else if (time >= 3600 * 24 * 30 * 12) {
return 5;
} else {
return 0;
}
}
/**
* 将一个时间戳转换成提示性时间字符串,(多少分钟)
*
* @param timeStamp
* @return
*/
public static String timeStampToFormat(long timeStamp) {
long curTime = System.currentTimeMillis() / (long) 1000;
long time = curTime - timeStamp;
return time / 60 + "";
}
}
日期时间处理工具类总结
最新推荐文章于 2019-06-27 16:48:29 发布