Получить текущее время и дату на Android - PullRequest
1005 голосов
/ 20 марта 2011

Как узнать текущее время и дату в приложении для Android?

Ответы [ 37 ]

1 голос
/ 16 апреля 2019

Вы можете получить время и дату отдельно от Календаря.

// You can pass time zone and Local to getInstance() as parameter

Calendar calendar = Calendar.getInstance(); 

int currentHour = calendar.get(Calendar.HOUR_OF_DAY);
int currentMinute = calendar.get(Calendar.MINUTE);
int second = calendar.get(Calendar.SECOND);
int date = calendar.get(Calendar.DAY_OF_MONTH);
int month = calendar.get(Calendar.MONTH);
int year = calendar.get(Calendar.YEAR);
1 голос
/ 26 сентября 2018

Вот несколько способов получить время и дату

public static void getCurrentTimeUsingDate() {
    Date date = new Date();
    String strDateFormat = "hh:mm:ss a";
    DateFormat dateFormat = new SimpleDateFormat(strDateFormat);
    String formattedDate= dateFormat.format(date);       
    Toast.makeText(this, formattedDate, Toast.LENGTH_SHORT).show();
}

Время с использованием календаря

public static void getCurrentTimeUsingCalendar() {
        Calendar cal = Calendar.getInstance();
        Date date=cal.getTime();
        DateFormat dateFormat = new SimpleDateFormat("HH:mm:ss");
        String formattedDate=dateFormat.format(date);
        Toast.makeText(this, formattedDate, Toast.LENGTH_SHORT).show();
}

Местноевремя и дата

public static void getCurrentTime(){
     System.out.println("-----Current time of your time zone-----");
     LocalTime time = LocalTime.now();
    Toast.makeText(this, time, Toast.LENGTH_SHORT).show();
 }

Зональное время

public static void getCurrentTimeWithTimeZone(){
Toast.makeText(this, "Current time of a different time zone using LocalTime", Toast.LENGTH_SHORT).show();

    ZoneId zoneId = ZoneId.of("America/Los_Angeles");
    LocalTime localTime=LocalTime.now(zoneId);
    DateTimeFormatter formatter = DateTimeFormatter.ofPattern("HH:mm:ss");
    String formattedTime=localTime.format(formatter);

Toast.makeText (this, formattedTime, Toast.LENGTH_SHORT) .show ();

}

Простой способ узнать текущее время и дату

import java.util.Calendar

Date currentTime = Calendar.getInstance().getTime();
1 голос
/ 19 сентября 2016

попробуйте использовать следующий код:

 Date date = new Date();
 SimpleDateFormat dateFormatWithZone = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss.SSS'Z'",Locale.getDefault());  
 String currentDate = dateFormatWithZone.format(date);
0 голосов
/ 01 октября 2018

Kotlin

Ниже приведены способы получения текущей даты в kotlin.

0 голосов
/ 12 января 2018
    long totalSeconds = currentTimeMillis / 1000;
    int currentSecond = (int)totalSeconds % 60;

    long totalMinutes = totalSeconds / 60;
    int currentMinute = (int)totalMinutes % 60;

    long totalHours = totalMinutes / 60;
    int currentHour = (int)totalHours % 12;

    TextView tvTime = findViewById(R.id.tvTime);
    tvTime.setText((currentHour + OR - TIME YOU ARE FROM GMT) + ":" + currentMinute + ":" + currentSecond);
0 голосов
/ 16 июня 2017

В пакете com.google.gson.internal.bind.util есть класс утилит ISO8601Utils, поэтому, если вы используете GSON в своем приложении, вы можете использовать его.

Он поддерживает миллис и часовые пояса, так что это очень хороший вариант прямо из коробки.

0 голосов
/ 29 февраля 2016
String DataString=DateFormat.getDateInstance(DateFormat.SHORT).format(Calendar.getInstance().getTime());

Для получения короткой даты в формате String в локализованном формате устройства.

Я не могу понять, почему так много ответов являются жестко закодированными форматами даты и времени, когда OS / Java обеспечивает правильную локализацию Даты и времени? Разве не лучше всегда использовать форматы устройства, а не программиста?

Он также обеспечивает чтение дат в локализованных форматах:

    DateFormat format = DateFormat.getDateInstance(DateFormat.SHORT);
    Date date=null;
    try {
        date = format.parse(DateString);
    }
    catch(ParseException e) {
    }

Тогда это зависит от пользователя, который устанавливает формат для отображения даты и времени, а не вы? Независимо от языков и т. Д. В разных странах существуют разные форматы с одним и тем же языком.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...