一个转换日期的工具类
来源:互联网 发布:深入理解软件构造系统 编辑:程序博客网 时间:2024/05/16 09:05
涉及到即时通讯的方面app制作,难免会有朋友圈,动态,这样的话就一定有一个发布的事件,如何将从服务器上发布的创建事件转换成几分钟前,几个小时前 刚刚 这样的形式,下面有一个工具类方便的转换
//第一步:
public class TimeUtils { private static TimeUtils mInstance; private static int nowYear; private static int nowMonth; private static int nowDay; private static int nowHour; private static int nowSecond; private static int nowMinute; private TimeUtils() { } public static TimeUtils getInstance() { if (mInstance == null) { synchronized (TimeUtils.class) { if (mInstance == null) { mInstance = new TimeUtils(); } } } return mInstance; }
//第二步,拿到当前的时间,两种方式,注意,用calendar拿到的月比实际小一个月,使用的时候要+1
public static TimeUtils getNowTime() {// long nowTime = System.currentTimeMillis();// SimpleDateFormat sf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");//24小时制// Date da = new Date(nowTime);// String data = sf.format(da);//// String[] arr = data.split(" ");// String[] day = arr[0].split("-");// //拿到年月日// nowYear = Integer.valueOf(day[0]);// nowMonth = Integer.valueOf(day[1]);// nowDay = Integer.valueOf(day[2]);// //拿到十分秒// String[] timeHour = arr[1].split(":");// nowHour = Integer.valueOf(timeHour[0]);// nowMinute = Integer.valueOf(timeHour[1]);// nowSecond = Integer.valueOf(timeHour[2]); Calendar mCalender = Calendar.getInstance(); nowYear = mCalender.get(Calendar.YEAR); nowMonth = mCalender.get(Calendar.MONTH); nowDay = mCalender.get(Calendar.DAY_OF_MONTH); nowHour = mCalender.get(Calendar.HOUR_OF_DAY); nowMinute = mCalender.get(Calendar.MINUTE); nowSecond = mCalender.get(Calendar.SECOND); System.out.println("--vnowYear = " + nowYear ); System.out.println("--vnowMonth = " + nowMonth ); System.out.println("--vnowDay = " + nowDay ); System.out.println("--vnowHour = " + nowHour ); System.out.println("--vnowMinute = " + nowMinute ); System.out.println("--vnowSecond = " + nowSecond ); return mInstance; }
//第三步,将服务器获得的时间进行转换
public static String getPublishTime(String data) { //2015-11-23 07:12:45 String[] arr = data.split(" "); String[] day = arr[0].split("-"); //拿到年月日 int year = Integer.valueOf(day[0]); int month = Integer.valueOf(day[1]); int date = Integer.valueOf(day[2]); //拿到十分秒 String[] timeHour = arr[1].split(":"); int hour = Integer.valueOf(timeHour[0]); int minute = Integer.valueOf(timeHour[1]); int second = Integer.valueOf(timeHour[2]); nowMonth =nowMonth+1; //注意,用日历获得的月比实际要小一个月,所以要+1 if (nowYear - year > 0) { return year + "年"; } else if (nowMonth - month > 0 ) { return nowMonth - month + "个月前"; } else if (nowDay - date > 0) { return nowDay - date + "天前"; } else if (nowHour - hour > 0) { return nowHour - hour + "小时前"; } else if (nowMinute - minute > 0) { return nowMinute - minute + "分钟前"; } else if (nowSecond - second > 30) { return nowSecond - second + "秒钟前"; }else{ return "刚刚"; }}
0 0
- 一个转换日期的工具类
- 日期转换工具类
- 日期转换工具类
- 日期转换工具类
- 日期转换工具类
- java转换日期的工具类
- 一个日期工具类
- 一个处理日期的工具类
- 一个日期时间的工具类
- 一个显示日期的工具类
- 日期格式转换工具类
- 日期格式转换【工具类】
- 日期格式转换工具类
- 一个日期转换的问题
- 字符串与日期类型转换的工具类
- 转换一定格式日期Date类型的工具类
- 分享一个好用的日期类型跟long转换工具
- 自己写的一个小的日期工具类
- 将三个数按从大到小顺序输出
- 云网站搭建过程
- dffdsfsdfs
- linux vi 中替换不可见字符^@\^A\^M等
- 并行计算之OpenMP入门简介
- 一个转换日期的工具类
- sudo不用密码的方法
- 震荡的解释
- jquery语法入门(一)
- linux开机启动程序
- Bitbucket使用详解
- 【NAS】NFS深入实践
- #sicily#1003. 有向图边的分类
- Android时间轴(Timeline)效果的实现