转载请注明出处,谢谢~~

这是一篇工具类博客,用于获取当天的零点时间,并将时间格式化为标准形式。

获取零点时间有两种方式:

public static long getTodayZero() {        Date date = new Date();        Calendar cal = Calendar.getInstance();        cal.setTimeZone(TimeZone.getTimeZone("UTC+8"));        cal.setTime(date);        cal.set(Calendar.HOUR, 0);        cal.set(Calendar.SECOND, 1);        cal.set(Calendar.MINUTE, 0);        cal.set(Calendar.MILLISECOND, 0);        System.out.println("today zero : " + cal.getTimeInMillis());        return cal.getTimeInMillis();       }

我一直不喜欢用这种方式,因为在不同的手机上,我测试有bug,可能是我写的有点问题,欢迎大家告诉我。我加上了UTC+8的时区,居然得到的还是UTC+0时区的时间,令我很费解。

所以我一直用这种方式:

public static long getTodayZero() {    Date date = new Date();         long l = 24*60*60*1000; //每天的毫秒数     //date.getTime()是现在的毫秒数,它 减去 当天零点到现在的毫秒数( 现在的毫秒数%一天总的毫秒数,取余。),理论上等于零点的毫秒数,不过这个毫秒数是UTC+0时区的。     //减8个小时的毫秒值是为了解决时区的问题。    return (date.getTime() - (date.getTime()%l) - 8* 60 * 60 *1000);}

代码简洁而且方便。

然后格式化一下时间:

@SuppressLint("SimpleDateFormat")    public static String getTime(long time) {        SimpleDateFormat format=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");          Date d1=new Date(time);          return format.format(d1);      }

得到的就是 例如今天 : 2105-4-1 00:00:00

更多相关文章

  1. GitHub 标星 2.5K+!教你通过玩游戏的方式学习 VIM!
  2. android 简单实现 RecyclerView 下拉刷新上拉加载
  3. HttpURLConnection 详解
  4. android——从打电话这个例子看android点击事件的3种处理方式
  5. android 插件实现
  6. 关于Android(安卓)Activity之间传递数据的6种方式
  7. 兼容android 9.0 明文传输(支持http请求,默认只支持https方式的请
  8. 关于android创建快捷方式会启动两个应用的问题(一)
  9. Android中ClearEditText实现点击EditText输入框右边清除图标来清

随机推荐

  1. 1049亿元!微软拟收购Siri幕后英雄Nuance
  2. Kaggle 大赛曝暗藏玄机:拿下 25000 美元的
  3. 中国开源世界中的重要玩家
  4. 为什么 NLP 领域没有出现像“CV 四小龙”
  5. Libra改名Diem,测试网TPS仅6笔/秒;
  6. 字节跳动的难题:TikTok 到底卖给谁?应该怎
  7. AWS年度盛会机器学习部分专家解读
  8. 亚马逊云科技如何赋能ISV助客户上云重塑?
  9. 亏损 7 年的 VIPKID 开始赚钱了
  10. 利用vstruct解析二进制数据