Android时间转换星期 昨天 今天工具
2016-12-08 14:24
429 查看
这是一个时间转换工具类,可以转换成,昨天,今天下午,今天上午,还可以判断是星期几。
上代码
显示格式:
1,下面的图片对应第一个方法的效果:
![](https://img-blog.csdn.net/20170330135118723)
2,下面的图对应的第二个方法效果:
![](https://img-blog.csdn.net/20170330140218228)
![](https://img-blog.csdn.net/20170330140731126)
3,下面的图片是第三个方法的效果。
![](https://img-blog.csdn.net/20170330140835815)
上代码
显示格式:
1,下面的图片对应第一个方法的效果:
2,下面的图对应的第二个方法效果:
3,下面的图片是第三个方法的效果。
import java.text.SimpleDateFormat; import java.util.Calendar; import java.util.Date; /** * 时间转换工具 */ public class TimeUtil { private TimeUtil(){} /** * 时间转化为显示字符串 * * @param timeStamp 单位为秒 */ public static String getTimeStr(long timeStamp){ if (timeStamp==0) return ""; Calendar inputTime = Calendar.getInstance(); inputTime.setTimeInMillis(timeStamp*1000); Date currenTimeZone = inputTime.getTime(); Calendar calendar = Calendar.getInstance(); calendar.set(Calendar.HOUR_OF_DAY, 23); calendar.set(Calendar.MINUTE, 59); calendar.set(Calendar.HOUR_OF_DAY, 0); calendar.set(Calendar.MINUTE, 0); calendar.set(Calendar.SECOND, 0); calendar.set(Calendar.MILLISECOND, 0); if (calendar.before(inputTime)){ SimpleDateFormat sdf = new SimpleDateFormat("HH:mm"); return sdf.format(currenTimeZone); } calendar.add(Calendar.DAY_OF_MONTH,-1); if (calendar.before(inputTime)){ return "昨天"; }else{ calendar.add(Calendar.DAY_OF_MONTH, -5); if (calendar.before(inputTime)){ return getWeekDayStr(inputTime.get(Calendar.DAY_OF_WEEK)); } else { calendar.set(Calendar.DAY_OF_MONTH, 1); calendar.set(Calendar.MONTH, Calendar.JANUARY); int year = inputTime.get(Calendar.YEAR); int month = inputTime.get(Calendar.MONTH); int day = inputTime.get(Calendar.DAY_OF_MONTH); return year+"/"+month+"/"+day; } } }
/** * 群发使用的时间转换 */ public static String multiSendTimeToStr(long timeStamp) { if (timeStamp==0) return ""; Calendar inputTime = Calendar.getInstance(); String timeStr = timeStamp + ""; if(timeStr.length() == 10){ timeStamp = timeStamp*1000; } inputTime.setTimeInMillis(timeStamp); Date currenTimeZone = inputTime.getTime(); Calendar calendar = Calendar.getInstance(); calendar.set(Calendar.HOUR_OF_DAY, 0); calendar.set(Calendar.MINUTE, 0); calendar.set(Calendar.SECOND, 0); calendar.set(Calendar.MILLISECOND, 0); if (calendar.before(inputTime)){ SimpleDateFormat sdf = new SimpleDateFormat("HH:mm"); return sdf.format(currenTimeZone); } calendar.add(Calendar.DAY_OF_MONTH,-1); if (calendar.before(inputTime)){ SimpleDateFormat sdf = new SimpleDateFormat("HH:mm"); return "昨天"; }else { calendar.add(Calendar.DAY_OF_MONTH, -5); if (calendar.before(inputTime)){ return getWeekDayStr(inputTime.get(Calendar.DAY_OF_WEEK)); } else{ calendar.set(Calendar.DAY_OF_MONTH, 1); calendar.set(Calendar.MONTH, Calendar.JANUARY); if (calendar.before(inputTime)){ SimpleDateFormat sdf = new SimpleDateFormat("M"+"/"+"d"+" "); String temp1 = sdf.format(currenTimeZone); SimpleDateFormat sdf1 = new SimpleDateFormat("HH:mm"); String temp2 = sdf1.format(currenTimeZone); return temp1+temp2; }else{ SimpleDateFormat sdf = new SimpleDateFormat("yyyy"+"/"+"M"+"/"+"d"+" "); String temp1 = sdf.format(currenTimeZone); SimpleDateFormat sdf1 = new SimpleDateFormat("HH:mm"); String temp2 = sdf1.format(currenTimeZone); return temp1+temp2; } } } }
/** * 时间转化为聊天界面显示字符串 * * @param timeStamp 单位为秒 */ public static String getChatTimeStr(long timeStamp){ if (timeStamp==0) return ""; Calendar inputTime = Calendar.getInstance(); String timeStr = timeStamp + ""; if(timeStr.length() == 10){ timeStamp = timeStamp*1000; } inputTime.setTimeInMillis(timeStamp); Date currenTimeZone = inputTime.getTime(); Calendar calendar = Calendar.getInstance(); // if (calendar.before(inputTime)){ // //当前时间在输入时间之前 // SimpleDateFormat sdf = new SimpleDateFormat("yyyy" + "年"+"MM"+"月"+"dd"+"日"); // return sdf.format(currenTimeZone); // } calendar.set(Calendar.HOUR_OF_DAY, 0); calendar.set(Calendar.MINUTE, 0); calendar.set(Calendar.SECOND, 0); calendar.set(Calendar.MILLISECOND, 0); if (calendar.before(inputTime)){ SimpleDateFormat sdf = new SimpleDateFormat("h:mm"); return timeFormatStr(inputTime,sdf.format(currenTimeZone)); } calendar.add(Calendar.DAY_OF_MONTH,-1); if (calendar.before(inputTime)){ SimpleDateFormat sdf = new SimpleDateFormat("h:mm"); return "昨天"+" "+timeFormatStr(inputTime, sdf.format(currenTimeZone)); }else{ calendar.set(Calendar.DAY_OF_MONTH, 1); calendar.set(Calendar.MONTH, Calendar.JANUARY); if (calendar.before(inputTime)){ SimpleDateFormat sdf = new SimpleDateFormat("M"+"月"+"d"+"日"); String temp1 = sdf.format(currenTimeZone); SimpleDateFormat sdf1 = new SimpleDateFormat("h:mm"); String temp2 = timeFormatStr(inputTime, sdf1.format(currenTimeZone)); return temp1+temp2; }else{ SimpleDateFormat sdf = new SimpleDateFormat("yyyy"+"年"+"M"+"月"+"d"+"日"); String temp1 = sdf.format(currenTimeZone); SimpleDateFormat sdf1 = new SimpleDateFormat("h:mm"); String temp2 = timeFormatStr(inputTime, sdf1.format(currenTimeZone)); return temp1+temp2; } } } /** * 24小时制转化成12小时制 * * @param strDay */ public static String timeFormatStr(Calendar calendar,String strDay) { String tempStr = ""; int hour = calendar.get(Calendar.HOUR_OF_DAY); if (hour > 11) { tempStr = "下午"+" " + strDay; } else { tempStr = "上午"+" " + strDay; } return tempStr; } /** * 时间转化为星期 * * @param indexOfWeek 星期的第几天 */ public static String getWeekDayStr(int indexOfWeek){ String weekDayStr = ""; switch (indexOfWeek) { case 1: weekDayStr = "星期日"; break; case 2: weekDayStr = "星期一"; break; case 3: weekDayStr = "星期二"; break; case 4: weekDayStr = "星期三"; break; case 5: weekDayStr = "星期四"; break; case 6: weekDayStr = "星期五"; break; case 7: weekDayStr = "星期六"; break; } return weekDayStr; } /** * 将时间戳格式化,13位的转为10位 * @param timestamp * @return */ public static long timestampFormate(long timestamp){ String timestampStr = timestamp + ""; if(timestampStr.length() == 13){ timestamp = timestamp/1000; } return timestamp; }
相关文章推荐
- Android(java)时间转换星期 昨天 今天 几分钟前工具
- Android 字符串转指定格式时间 日期处理 去掉月份或天多余的0 获取今天 昨天 明天等的日期和星期
- scala时间处理-获取今天日期,昨天日期,本周时间,本月时间,时间戳转换日期,时间比较
- Android & Java DateUtils 拿来就用 包含常用的日期和时间转换的工具
- 时间转换成昨天,今天,明天的形式
- android 时间戳转换和dptopx转换工具(java)
- 使用javascript将时间转换成今天,昨天,前天等格式
- Android 判断获取的时间是否是今天、昨天
- Java写的获取日期工具类(今天、昨天、本周、上周、本月、上月、本年及特定时间的开始时间和结束时间)
- Android工具之把int类型整数毫秒值转换为时间分秒格式
- PHP时间转换今天昨天前天几天前
- Android/JAVA 针对时间戳转今天昨天前天,以及刚刚,几分钟的显示
- Android 开发工具类,常用方法,Log 工具,数据库,时间戳转换
- 使用javascript将时间转换成今天,昨天,前天等格式
- php 获取时间今天明天昨天时间戳
- JAVA的系统时间输出以及判断今天是星期几
- ffmpeg 转换VC工具 V1.1.2 支持android.mk工程文件生成
- 黄聪:unix时间戳转换工具|unix时间戳在线计算|perl时间戳|php时间戳|mysql时间戳|python时间戳
- 日期工具转换,取得当前半年、一年、本周、当前季度日期等开始结束时间
- php 获取时间(今天,昨天,三天内,本周,上周,本月,三年内,半年内,一年内,三年内)