文章目录
- 1、简介
- 2、文件结构
- 3、功能代码
- 4、log 打印
1、简介
使用calendar 来获取系统时间,或者设定的时区时间
2、文件结构
3、功能代码
package com.example.tssh.mytimetest;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.text.format.DateFormat;
import java.util.Calendar;
import java.util.Locale;
import java.util.TimeZone;
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
getUSTimeZone(); //获取美国时区时间
getCurrentTimeZone(); //获取手机系统时区
getCurrentLanguage(); //获取 手机系统语言
getCurrentTime(); //获取当前手机时间
}
private void getUSTimeZone() {
Calendar calendarUS = Calendar.getInstance();
calendarUS.setTimeZone(TimeZone.getTimeZone("UT-6:00")); //北美的时区
int hourUs = calendarUS.get(Calendar.HOUR_OF_DAY);
int minuteUs = calendarUS.get(Calendar.MINUTE);
System.out.println("获取美国时区时间: " + hourUs + "时" + minuteUs + " 分");
}
//获取当前系统时间
private void getCurrentTime() {
Calendar calendar = Calendar.getInstance();
int year ;
int month;
int day;
int hour ;
int minute;
int second;
boolean is24Time = DateFormat.is24HourFormat(this);//判断系统是不是 24 小时制
year = calendar.get(Calendar.YEAR);
month = calendar.get(Calendar.MONTH) + 1;
day = calendar.get(Calendar.DAY_OF_MONTH);
if (is24Time) {
hour = calendar.get(Calendar.HOUR_OF_DAY);
}else {
hour = calendar.get(Calendar.HOUR);
}
minute = calendar.get(Calendar.MINUTE);
second = calendar.get(Calendar.SECOND);
System.out.println("获取的系统时间: " +
"year: " + year + "\n" +
"month: " + month + "\n" +
"day: " + day + "\n" +
"hour: " + hour + "\n" +
"minute: " + minute + "\n" +
"second: " + second + "\n"
);
}
/**
* 获取当前时区
* @return
*/
public String getCurrentTimeZone() {
TimeZone tz = TimeZone.getDefault();
String strTz = tz.getDisplayName(false, TimeZone.SHORT);
System.out.println("系统时区:" + strTz);
return strTz;
}
/**
* 获取当前系统语言格式
* @return
*/
public String getCurrentLanguage(){
Locale locale = getResources().getConfiguration().locale;
String language=locale.getLanguage();
String country = locale.getCountry();
String lc=language+"_"+country;
System.out.println("系统语言:" + lc);
return lc;
}
}
4、log 打印
文献参考:
Android时间时区设置和获取