您的位置:首页 > 移动开发 > Android开发

android系统时间获取方式

2015-06-01 10:12 435 查看
1、获取系统时间

[java] view
plaincopy





SimpleDateFormat timeFormat = new SimpleDateFormat("HH-mm-ss");

SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd");



strTime = timeFormat.format(new java.util.Date());

strDate = dateFormat.format(new java.util.Date());

2、可以获取当前的年月时分,也可以分开写:

[java] view
plaincopy





SimpleDateFormat sDateFormat = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");

String date = sDateFormat.format(new java.util.Date());

3、指定时区的时间

[java] view
plaincopy





df=DateFormat.getDateTimeInstance(DateFormat.FULL,DateFormat.FULL,Locale.CHINA);

System.out.println(df.format(new Date()));

4、查看系统当时使用的时区

[java] view
plaincopy





timeFormat.getTimeZone();

System.out.println("TimeZone:" + timeFormat.getTimeZone());

说明:eclipse刚开始安装时,使用上面的方式获取系统时间错误,和本地显示时间不一致,这是因为使用的是系统默认时区,即:New_York ,不是中国标准时间。

5、设置系统时区:

[java] view
plaincopy





AlarmManager mAlarmManager = (AlarmManager)getSystemService(Context.ALARM_SERVICE);

mAlarmManager.setTimeZone("GMT+08:00");

//mAlarmManager.setTimeZone("Asia/Shanghai");

设置时区需要在manifest.xml中增加如下权限:

[java] view
plaincopy





<!-- 允许设置时区-->

<uses-permission android:name="android.permission.SET_TIME_ZONE" />

6、Android系统时间是24小时制还是12小时制

[java] view
plaincopy





ContentResolver cv = this.getContentResolver();

String strTimeFormat = android.provider.Settings.System.getString(cv,android.provider.Settings.System.TIME_12_24);



if(strTimeFormat.equals("24")) {

Log.i("activity","24");

}

7、利用calender获取系统时间

[java] view
plaincopy





Calendar c = Calendar.getInstance();

取得系统日期:year = c.get(Calendar.YEAR)

month = c.grt(Calendar.MONTH)

day = c.get(Calendar.DAY_OF_MONTH)

取得系统时间:hour = c.get(Calendar.HOUR_OF_DAY);

minute = c.get(Calendar.MINUTE)

8、利用Time获取

[java] view
plaincopy





Time t=new Time(); // or Time t=new Time("GMT+8"); 加上Time Zone资料。

t.setToNow(); // 取得系统时间。

int year = t.year;

int month = t.month;

int date = t.monthDay;

int hour = t.hour; // 0-23

int minute = t.minute;

int second = t.second;

Android的文件有建议用Time代替Calendar。用Time对CPU的负荷会较小。在写Widget时特别重要。

===================================================================================================================================

附:

Android系统时区:

[java] view
plaincopy





<timezones>

<timezone id="Pacific/Majuro">马朱罗</timezone>

<timezone id="Pacific/Midway">中途岛</timezone>

<timezone id="Pacific/Honolulu">檀香山</timezone>

<timezone id="America/Anchorage">安克雷奇</timezone>

<timezone id="America/Los_Angeles">美国太平洋时间 (洛杉矶)</timezone>

<timezone id="America/Tijuana">美国太平洋时间 (提华纳)</timezone>

<timezone id="America/Phoenix">美国山区时间 (凤凰城)</timezone>

<timezone id="America/Chihuahua">奇瓦瓦</timezone>

<timezone id="America/Denver">美国山区时间 (丹佛)</timezone>

<timezone id="America/Costa_Rica">美国中部时间 (哥斯达黎加)</timezone>

<timezone id="America/Chicago">美国中部时间 (芝加哥)</timezone>

<timezone id="America/Mexico_City">美国中部时间 (墨西哥城)</timezone>

<timezone id="America/Regina">美国中部时间 (里贾纳)</timezone>

<timezone id="America/Bogota">哥伦比亚时间 (波哥大)</timezone>

<timezone id="America/New_York">美国东部时间 (纽约)</timezone>

<timezone id="America/Caracas">委内瑞拉时间 (加拉加斯)</timezone>

<timezone id="America/Barbados">大西洋时间 (巴巴多斯)</timezone>

<timezone id="America/Manaus">亚马逊标准时间 (马瑙斯)</timezone>

<timezone id="America/Santiago">圣地亚哥</timezone>

<timezone id="America/St_Johns">纽芬兰时间 (圣约翰)</timezone>

<timezone id="America/Sao_Paulo">圣保罗</timezone>

<timezone id="America/Argentina/Buenos_Aires">布宜诺斯艾利斯</timezone>

<timezone id="America/Godthab">戈特霍布</timezone>

<timezone id="America/Montevideo">乌拉圭时间 (蒙得维的亚)</timezone>

<timezone id="Atlantic/South_Georgia">南乔治亚</timezone>

<timezone id="Atlantic/Azores">亚述尔群岛</timezone>

<timezone id="Atlantic/Cape_Verde">佛得角</timezone>

<timezone id="Africa/Casablanca">卡萨布兰卡</timezone>

<timezone id="Europe/London">格林尼治标准时间 (伦敦)</timezone>

<timezone id="Europe/Amsterdam">中欧标准时间 (阿姆斯特丹)</timezone>

<timezone id="Europe/Belgrade">中欧标准时间 (贝尔格莱德)</timezone>

<timezone id="Europe/Brussels">中欧标准时间 (布鲁塞尔)</timezone>

<timezone id="Europe/Sarajevo">中欧标准时间 (萨拉热窝)</timezone>

<timezone id="Africa/Windhoek">温得和克</timezone>

<timezone id="Africa/Brazzaville">西部非洲标准时间 (布拉扎维)</timezone>

<timezone id="Asia/Amman">东欧标准时间 (安曼)</timezone>

<timezone id="Europe/Athens">东欧标准时间 (雅典)</timezone>

<timezone id="Asia/Beirut">东欧标准时间 (贝鲁特)</timezone>

<timezone id="Africa/Cairo">东欧标准时间 (开罗)</timezone>

<timezone id="Europe/Helsinki">东欧标准时间 (赫尔辛基)</timezone>

<timezone id="Asia/Jerusalem">以色列时间 (耶路撒冷)</timezone>

<timezone id="Europe/Minsk">明斯克</timezone>

<timezone id="Africa/Harare">中部非洲标准时间 (哈拉雷)</timezone>

<timezone id="Asia/Baghdad">巴格达</timezone>

<timezone id="Europe/Moscow">莫斯科</timezone>

<timezone id="Asia/Kuwait">科威特</timezone>

<timezone id="Africa/Nairobi">东部非洲标准时间 (内罗毕)</timezone>

<timezone id="Asia/Tehran">伊朗标准时间 (德黑兰)</timezone>

<timezone id="Asia/Baku">巴库</timezone>

<timezone id="Asia/Tbilisi">第比利斯</timezone>

<timezone id="Asia/Yerevan">埃里温</timezone>

<timezone id="Asia/Dubai">迪拜</timezone>

<timezone id="Asia/Kabul">阿富汗时间 (喀布尔)</timezone>

<timezone id="Asia/Karachi">卡拉奇</timezone>

<timezone id="Asia/Oral">乌拉尔</timezone>

<timezone id="Asia/Yekaterinburg">叶卡捷林堡</timezone>

<timezone id="Asia/Calcutta">加尔各答</timezone>

<timezone id="Asia/Colombo">科伦坡</timezone>

<timezone id="Asia/Katmandu">尼泊尔时间 (加德满都)</timezone>

<timezone id="Asia/Almaty">阿拉木图</timezone>

<timezone id="Asia/Rangoon">缅甸时间 (仰光)</timezone>

<timezone id="Asia/Krasnoyarsk">克拉斯诺亚尔斯克</timezone>

<timezone id="Asia/Bangkok">曼谷</timezone>

<timezone id="Asia/Shanghai">中国标准时间 (北京)</timezone>

<timezone id="Asia/Hong_Kong">香港时间 (香港)</timezone>

<timezone id="Asia/Irkutsk">伊尔库茨克时间 (伊尔库茨克)</timezone>

<timezone id="Asia/Kuala_Lumpur">吉隆坡</timezone>

<timezone id="Australia/Perth">佩思</timezone>

<timezone id="Asia/Taipei">台北时间 (台北)</timezone>

<timezone id="Asia/Seoul">首尔</timezone>

<timezone id="Asia/Tokyo">日本时间 (东京)</timezone>

<timezone id="Asia/Yakutsk">雅库茨克时间 (雅库茨克)</timezone>

<timezone id="Australia/Adelaide">阿德莱德</timezone>

<timezone id="Australia/Darwin">达尔文</timezone>

<timezone id="Australia/Brisbane">布里斯班</timezone>

<timezone id="Australia/Hobart">霍巴特</timezone>

<timezone id="Australia/Sydney">悉尼</timezone>

<timezone id="Asia/Vladivostok">海参崴时间 (符拉迪沃斯托克)</timezone>

<timezone id="Pacific/Guam">关岛</timezone>

<timezone id="Asia/Magadan">马加丹时间 (马加丹)</timezone>

<timezone id="Pacific/Auckland">奥克兰</timezone>

<timezone id="Pacific/Fiji">斐济</timezone>

<timezone id="Pacific/Tongatapu">东加塔布</timezone>

</timezones>

原文地址http://blog.csdn.net/kakaxi1o1/article/details/17193555
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: