1. 程式人生 > >calendar 獲取系統時間

calendar 獲取系統時間

文章目錄

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時間時區設定和獲取
https://blog.csdn.net/zhongshujunqia/article/details/53433306