您的位置:首页 > 编程语言 > Java开发

java判断今天,昨天,前天,不能用秒间隔

2015-08-15 20:33 513 查看
。。。。

一json optString 解析的TimesTamp string

二long dateSec = (long) (Double.valueOf(timestamp) * 1000);

三Date date=new Date(dateSec);

四getTimestampString(date);

public static String getTimestampString(Date paramDate) {

String str = null;

long l = paramDate.getTime();

Calendar localCalendar = GregorianCalendar.getInstance();

localCalendar.setTime(paramDate);

int year = localCalendar.get(Calendar.YEAR);

if(! isSameYear(year)){ //去年,直接返回

String paramDate2str = new SimpleDateFormat("yyyy MM dd", Locale.CHINA).format(paramDate);

return paramDate2str;

}

if (isSameDay(l)) {

int i = localCalendar.get(Calendar.HOUR_OF_DAY);

if (i > 17) {

str = "晚上 HH:mm";//HH表示24小时,hh表示12小时进制,

} else if ((i >= 0) && (i <= 6)) {

str = "凌晨 HH:mm";

} else if ((i > 11) && (i <= 17)) {

str = "下午 HH:mm";

} else {

str = "上午 HH:mm";

}

} else if (isYesterday(l)) {

str = "昨天 HH:mm";

} else if (isBeforeYesterday(l)) {

str = "前天 HH:mm";

} else {

str = "M月d日 HH:mm";

}

String paramDate2str = new SimpleDateFormat(str, Locale.CHINA).format(paramDate);

return paramDate2str;

}

。。。

// 获取 今天开始结束 时间

public static TimeInfo getTodayStartAndEndTime() {

Calendar localCalendar1 = Calendar.getInstance();

localCalendar1.set(Calendar.HOUR_OF_DAY, 0);

localCalendar1.set(Calendar.MINUTE, 0);

localCalendar1.set(Calendar.SECOND, 0);

localCalendar1.set(Calendar.MILLISECOND, 0);

Date localDate1 = localCalendar1.getTime();

long l1 = localDate1.getTime();

Calendar localCalendar2 = Calendar.getInstance();

localCalendar2.set(Calendar.HOUR_OF_DAY, 23);

localCalendar2.set(Calendar.MINUTE, 59);

localCalendar2.set(Calendar.SECOND, 59);

localCalendar2.set(Calendar.MILLISECOND, 999);

Date localDate2 = localCalendar2.getTime();

long l2 = localDate2.getTime();

TimeInfo localTimeInfo = new TimeInfo();

localTimeInfo.setStartTime(l1);

localTimeInfo.setEndTime(l2);

return localTimeInfo;

}

// 获取 昨天开始结束 时间

public static TimeInfo getYesterdayStartAndEndTime() {

Calendar localCalendar1 = Calendar.getInstance();

localCalendar1.add(Calendar.DAY_OF_MONTH, -1);//5

localCalendar1.set(Calendar.HOUR_OF_DAY, 0);//11

localCalendar1.set(Calendar.MINUTE, 0);//12

localCalendar1.set(Calendar.SECOND, 0);//13

localCalendar1.set(Calendar.MILLISECOND, 0);//Calendar.MILLISECOND

Date localDate1 = localCalendar1.getTime();

long l1 = localDate1.getTime();

Calendar localCalendar2 = Calendar.getInstance();

localCalendar2.add(Calendar.DAY_OF_MONTH, -1);//5

localCalendar2.set(Calendar.HOUR_OF_DAY, 23);//11

localCalendar2.set(Calendar.MINUTE, 59);//12

localCalendar2.set(Calendar.SECOND, 59);//13

localCalendar2.set(Calendar.MILLISECOND, 999);//Calendar.MILLISECOND

Date localDate2 = localCalendar2.getTime();

long l2 = localDate2.getTime();

TimeInfo localTimeInfo = new TimeInfo();

localTimeInfo.setStartTime(l1);

localTimeInfo.setEndTime(l2);

return localTimeInfo;

}

// 获取 前天开始结束 时间

public static TimeInfo getBeforeYesterdayStartAndEndTime() {

Calendar localCalendar1 = Calendar.getInstance();

localCalendar1.add(Calendar.DAY_OF_MONTH, -2);

localCalendar1.set(Calendar.HOUR_OF_DAY, 0);

localCalendar1.set(Calendar.MINUTE, 0);

localCalendar1.set(Calendar.SECOND, 0);

localCalendar1.set(Calendar.MILLISECOND, 0);

Date localDate1 = localCalendar1.getTime();

long l1 = localDate1.getTime();

Calendar localCalendar2 = Calendar.getInstance();

localCalendar2.add(Calendar.DAY_OF_MONTH, -2);

localCalendar2.set(Calendar.HOUR_OF_DAY, 23);

localCalendar2.set(Calendar.MINUTE, 59);

localCalendar2.set(Calendar.SECOND, 59);

localCalendar2.set(Calendar.MILLISECOND, 999);

Date localDate2 = localCalendar2.getTime();

long l2 = localDate2.getTime();

TimeInfo localTimeInfo = new TimeInfo();

localTimeInfo.setStartTime(l1);

localTimeInfo.setEndTime(l2);

return localTimeInfo;

}

private static boolean isSameDay(long paramLong) {

TimeInfo localTimeInfo = getTodayStartAndEndTime();

return (paramLong > localTimeInfo.getStartTime()) && (paramLong < localTimeInfo.getEndTime());

}

private static boolean isYesterday(long paramLong) {

TimeInfo localTimeInfo = getYesterdayStartAndEndTime();

return (paramLong > localTimeInfo.getStartTime()) && (paramLong < localTimeInfo.getEndTime());

}

private static boolean isBeforeYesterday(long paramLong) {

TimeInfo localTimeInfo = getBeforeYesterdayStartAndEndTime();

return (paramLong > localTimeInfo.getStartTime()) && (paramLong < localTimeInfo.getEndTime());

}

public static boolean isSameYear(int year) {

Calendar cal = Calendar.getInstance();

int CurYear = cal.get(Calendar.YEAR);

// Log.e("","CurYear="+CurYear);//2015

return CurYear==year;

}

。。。。。。

public class TimeInfo {

private long startTime;

private long endTime;

public long getStartTime() {

return this.startTime;

}

public void setStartTime(long paramLong) {

this.startTime = paramLong;

}

public long getEndTime() {

return this.endTime;

}

public void setEndTime(long paramLong) {

this.endTime = paramLong;

}

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