Как добавить один час в UTC в Android - PullRequest
0 голосов
/ 27 июня 2019

Я пытаюсь получить текущее время, а затем преобразовать в UTC + 1 часовой пояс в формате yyyy-MM-dd HH:mm:ss

Я попробовал следующий код.Это не сработало.Кто-нибудь может помочь?

public static String getDateTime() {
    Date time = Calendar.getInstance().getTime();
    SimpleDateFormat outputFmt = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");        
    outputFmt.setTimeZone(TimeZone.getTimeZone("UTC+1"));
    return outputFmt.format(time);
}

Ответы [ 2 ]

0 голосов
/ 01 июля 2019

Следующий метод добавит один час к времени UTC.

public static String getDateTime ()

{

SimpleDateFormat outputFmt = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
outputFmt.setTimeZone(TimeZone.getTimeZone("UTC"));
String utctime=outputFmt.format(new Date());
String time=null;
Calendar calendar=null;
Date date;

try
{
    calendar = Calendar.getInstance();
    calendar.setTime(outputFmt.parse(utctime));
    calendar.add(Calendar.HOUR, 1);
    date=calendar.getTime();
    time=outputFmt.format(date);

} catch (ParseException e) {
    e.printStackTrace();
}

return time;

}

0 голосов
/ 27 июня 2019

Я думаю, вы можете попробовать:

public static String getDateTime() { 

    SimpleDateFormat outputFmt = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); 

    // Read current time already in desired timezone
    Calendar time = Calendar.getInstance(TimeZone.getTimeZone("Europe/London")); 

    return outputFmt.format(time.getTime());
}
...