Android获取系统时间的多种方法
Android中获取系统时间有多种方法,可分为Java中Calendar类获取,java.util.date类实现,还有android中Time实现。
现总结如下:
方法一:
|
1
2
3
4
5
6
7
|
void getTime1(){ long time=System.currentTimeMillis();//long now = android.os.SystemClock.uptimeMillis(); SimpleDateFormat format=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); Date d1=new Date(time); String t1=format.format(d1); Log.e("msg", t1); } |
方法二:
|
1
2
3
|
SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd-HH:mm:ss"); String t=format.format(new Date()); Log.e("msg", t); |
方法三:
|
1
2
3
4
5
6
7
8
9
|
void getTime3(){ Calendar calendar = Calendar.getInstance(); String created = calendar.get(Calendar.YEAR) + "年" + (calendar.get(Calendar.MONTH)+1) + "月"//从0计算 + calendar.get(Calendar.DAY_OF_MONTH) + "日" + calendar.get(Calendar.HOUR_OF_DAY) + "时" + calendar.get(Calendar.MINUTE) + "分"+calendar.get(Calendar.SECOND)+"s"; Log.e("msg", created); } |
方法四:
|
1
2
3
4
5
6
|
void getTime4(){ Time t=new Time(); // or Time t=new Time("GMT+8"); 加上Time Zone资料。 t.setToNow(); // 取得系统时间。 String time=t.year+"年 "+(t.month+1)+"月 "+t.monthDay+"日 "+t.hour+"h "+t.minute+"m "+t.second; Log.e("msg", time); } |
获取星期日期:
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
|
Calendar calendar = Calendar.getInstance(); int day = calendar.get(Calendar.DAY_OF_WEEK); String today = null; if (day == 2) { today = "Monday"; } else if (day == 3) { today = "Tuesday"; } else if (day == 4) { today = "Wednesday"; } else if (day == 5) { today = "Thursday"; } else if (day == 6) { today = "Friday"; } else if (day == 7) { today = "Saturday"; } else if (day == 1) { today = "Sunday"; } System.out.println("Today is:- " + today); |
最后说一下日期格式化,日期格式化通常使用SimpleDateFormat类实现,其中的日期格式不能够自己随意定义,主要有以下几种形式:
|
1
2
|
SimpleDateFormat f1= new SimpleDateFormat(); //其中没有些格式化参数,我们使用默认的日期格式。System.out.println(f.formate(new Date())); |
代码输出的日期格式为:12-3-22 下午4:36
|
1
2
3
4
5
6
7
|
SimpleDateFormat f4= new SimpleDateFormat("今天是"+"yyyy年MM月dd日 E kk点mm分");//可根据不同样式请求显示不同日期格式,要显示星期可以添加E参数System.out.println(f4.format(new Date()));//代码输出的日期格式为:今天是2012年03月22日 星期四 16点46分SimpleDateFormat formater = new SimpleDateFormat("yyyyMMdd hh:mm:ss");System.out.println("Date to String "+formater.format(new Date()));//相近的常用形式还有 yyMMdd hh:mm:ss yyyy-MM-dd hh:mm:ss dd-MM-yyyy hh:mm:ss |
应有的时候通常还会需要把具体日期转换为毫秒或者Timestamp形式,如下:
文本 - > Timestamp,日期 -> Timestamp
|
1
2
3
4
5
6
7
8
9
10
|
Timestamp t ;SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");try ...{ t = new Timestamp(format.parse("2007-07-19 00:00:00").getTime());} catch (ParseException e) ...{ e.printStackTrace();}Timestamp t ;SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");t = new Timestamp(new Date().getTime()); |
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
android获取时间差的方法
有些时候我们需要获取当前时间和某个时间之间的时间差,这时如何获取呢?
1. 引用如下命名空间:
|
1
2
|
import java.util.Date;import android.text.format.DateFormat; |
2. 设置时间格式:
|
1
|
SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); |
3. 获取时间:
|
1
2
3
4
|
Date curDate = new Date(System.currentTimeMillis());//PROCESSINGDate endDate = new Date(System.currentTimeMillis());long diff = endDate.getTime() - curDate.getTime(); |
这样获取的就是时间间隔了,并且是ms级别的。
希望本文所述对大家的Android程序设计有所帮助。
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
二、获取网络时间
很多时候,由于手机的不确定性,导致各个手机的时间都不尽相同,如果开发中需要获取统一的时间来匹配一些规则的时候,比如我之前公司就是通过或去当前时间并且转换之后来匹配网络连接的规则,防止大批量的抓包,那么这个时候就需要一个统一的时间和后台进行匹配,这是简单的使用获取系统时间就可能存在问题,用户手机如果调成自动获取网络时间的话没问题,但是如果不是呢?所以获取网络时间就派上了用处
|
1
2
3
4
5
6
7
8
9
10
|
URL url = null;//取得资源对象try { URLConnection uc = url.openConnection();//生成连接对象 uc.connect(); //发出连接 ld = uc.getDate(); //取得网站日期时间 Logger.i(TAG,"ld---->>>>"+ld);} catch (Exception e) { e.printStackTrace();} |
Android获取系统时间的多种方法的更多相关文章
- Android获取系统时间方法的总结
Android获取系统时间方法的方法有很多种,常用的有Calendar.Date.currentTimeMills等方法. (1)Calendar Calendar获取系统时间首先要用Calendar ...
- Android 获取系统时间和网络时间
有些时候我们的应用中只能使用网络时间,而不能使用系统的时间,这是为了避免用户关闭了使用网络时间的功能后所产生的误差. 直接上代码. 1.清单文件中网络添加权限. <!-- 访问Internet资 ...
- WPF 获取系统 DPI 的多种方法
原文:WPF 获取系统 DPI 的多种方法 WPF 获取系统 DPI 的多种方法 由于 WPF 的尺寸单位和系统的 DPI 相关,我们有时需要获取 DPI 值来进行一些界面布局的调整,本文汇总了一些 ...
- Android获取系统时间yyyyMMddHHmmssSSS
代码改变世界 public String testTime1() throws ParseException { String DEFAULT_TIME_FORMAT = "yyyy-MM- ...
- (转+原)android获取系统时间
参考的网站如下: http://c.biancheng.net/cpp/html/144.html http://www.linuxidc.com/Linux/2012-03/55909.htm 代码 ...
- android获取系统应用大小的方法
<span style="font-family: Arial, Helvetica, sans-serif;"><span style="font-s ...
- Android获取网络时间的方法
一.通过免费或者收费的API接口获取 1.免费 QQ:http://cgi.im.qq.com/cgi-bin/cgi_svrtime 淘宝:http://api.m.taobao.com/rest/ ...
- C++11新特性,利用std::chrono精简传统获取系统时间的方法
一.传统的获取系统时间的方法 传统的C++获取时间的方法须要分平台来定义. 相信百度代码也不少. 我自己写了下,例如以下. const std::string getCurrentSystemTime ...
- VC++ 获取系统时间、程序运行时间(精确到秒,毫秒)的五种方法
1.使用CTime类(获取系统当前时间,精确到秒) CString str; //获取系统时间 CTime tm; tm=CTime::GetCurrentTime();//获取系统日期 str=tm ...
随机推荐
- python 编写的经纬度坐标转换类
# -*- coding: utf-8 -*- # /** # * 各地图API坐标系统比较与转换; # * WGS84坐标系:即地球坐标系,国际上通用的坐标系.设备一般包含GPS芯片或者北斗芯片获取 ...
- POJ 2513 trie树+并查集判断无向图的欧拉路
生无可恋 查RE查了一个多小时.. 原因是我N define的是250500 应该是500500!!!!!!!!! 身败名裂,已无颜面对众人.. 吐槽完了 我们来说思路... 思路: 判有向图能否形成 ...
- oracle数据库rman备份与还原
我是oracle 界的小白,由于公司领导要求,不得不硬着头皮在网上找rman备份还原的方法,废话不多说,具体看例子(window) 运行CMD: rman target 管理员账号/密码@orcl 备 ...
- Tomcatsession共享方案--memcached-session-manager
https://github.com/magro/memcached-session-manager/wiki/SerializationStrategies MSM的特性: a.支持t ...
- JavaScriptResult
- 数据库表结构导出sql语句
在“对象资源管理器”中找到要导出的表,选中该表并单击右键,“编写表脚本为(S)”/“CREATE到(C)”/“新查询编辑器窗口”即可查看该表的建表语句,Ctrl+S保存为sql脚本文件
- 1.Ventuz 介绍
Ventoz能做什么? Ventuz是一款实时图文包装内容创作.制作和播出控制软件.Ventuz专注于高端视听内容的制作,包括交互展示和大型活动.视频墙.广播电视在线包装及演播室舞台及灯光控制等领域. ...
- JavaWeb中使用到的类与接口整理(一)servlet包
javaweb学了半本,整理了一下Servlet技术模型.servlet容器模型.jsp技术模型中的类与接口,有助于理解web应用中的页面跳转和参数传递,目录: HttpServlet 可作Scope ...
- Command "python setup.py egg_info" failed with error code 1 in /tmp/pip-build*解决办法
easy_install -U setuptools or pip install ipython 亲测有效
- android随手记
Linearlayout: gravity:本元素中所有子元素的重力方向 layout_gravity:本元素对于父元素的重力方向 自定义权限:http://www.cnblogs.com/i ...