老是要用到时间日期的一些处理,诸如:某段程序的时间间隔,日期时间格式化... 备注之


java中常用的 时间 日期 class:

java.util.Date

java.util.Calendar

java.text.DateFormat

java.text.SimpleDateFormat

还有个获取系统时间的方法 System.currentTimeMillis();


android中的:

android.os.SystemClock
android.text.format.DateFormat
android.text.format.DateUtils


android.os.SystemClock

SystemClock.elapsedRealtime(); //手机启动后过了多长时间(毫秒值,含手机深度睡眠时间)

所谓android深度睡眠,即屏幕关闭后,一段时间不做任何操作,不连接usb,然后在一定时间后,
手机很多服务、进程都睡眠了,不再运行。

SystemClock.uptimeMillis();//手机启动后过了多长时间(毫秒值,不含手机深度睡眠时间)
SystemClock.currentThreadTimeMillis(); //当前线程运行了多少时间(毫秒值,不含thread或systemclock.sleep的值)

android.text.format.DateFormat

DateFormat.format("yyyy-MM-dd HH:mm:ss", System.currentTimeMillis());

DateFormat.format("yy/MM/dd", Calendar.getInstance());
DateFormat.format("yyyy", new Date(2048,12,01));

直接根据格式,格式时间 (关于格式,类中有定义)


android.text.format.DateUtils

DateUtils.formatDateTime(getApplicationContext(), //格式化时间,最多显示到分钟。最后参数设定显示的格式
System.currentTimeMillis(),
DateUtils.FORMAT_24HOUR|DateUtils.FORMAT_SHOW_DATE|DateUtils.FORMAT_SHOW_TIME
|DateUtils.FORMAT_SHOW_YEAR|DateUtils.LENGTH_LONG|DateUtils.FORMAT_ABBREV_MONTH);

DateUtils.getRelativeTimeSpanString(System.currentTimeMillis()+60*4000));

//返回相对于当前时间的最大区间表示的字符串:几(分钟,小时,天,周,月,年)前/后

DateUtils.getRelativeTimeSpanString(context, long timeMillis);

//返回相对于当前时间的,参数时间字符串:在同一天显示时分;在不同一天,显示月日;在不同一年,显示年月日

DateUtils.formatDateRange(getApplicationContext(), System.currentTimeMillis(), System.currentTimeMillis() + 60 * 60 * 3000,
DateUtils.FORMAT_SHOW_TIME)); //返回两个时间值间的 相距 字符串



更多相关文章

  1. [Android问答] 如何获得手机屏幕分辨率?
  2. android 自定义时间控件
  3. Android中字符串片段高亮
  4. android 获得手机信息
  5. android手机通讯录备份还原代码
  6. 【Android 开发教程】经过预定义的查询字符串常量

随机推荐

  1. Intel Medfield Android(安卓)Honeycomb
  2. android webview与H5混合开发,webview自定
  3. Android绘制(三):Path结合属性动画, 让图
  4. Android(安卓)滑动切换(首页展示,图片、新
  5. Android(安卓)UI控件学习(一)——拖动条
  6. [原] Android监听网络的变化
  7. 如何在Android中整合立体声音效处理库|Op
  8. Android客户端移动流量无法登陆OpenFire
  9. Android之反编译技术
  10. android中动态输入日期与时间