软件编程
位置:首页>> 软件编程>> java编程>> java判断今天,昨天,前天,不能用秒间隔的简单实例

java判断今天,昨天,前天,不能用秒间隔的简单实例

作者:jingxian  发布时间:2021-07-27 23:01:35 

标签:java,判断,今天,昨天

实例如下:


一 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;
 }
}
0
投稿

猜你喜欢

手机版 软件编程 asp之家 www.aspxhome.com