Я пытаюсь получить разницу во времени между датами как формат String, как 4 часа назад.Расчет разницы во времени между двумя экземплярами времени GMT как String
Вот мой код
В моем понимании Calendar.getInstance()
дает время, как по Гринвичу. мое время сервера GMT, поэтому разница должна быть GMT Vs GMT, однако разница с этим кодом - GMT (Server) Vs. GMT +5 (Мой текущий часовой пояс)
Как я могу изменить разницу только по Гринвичу?
SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
Date convertedDate = new Date();
Calendar systemCal = Calendar.getInstance();
long currentTime = systemCal.getTimeInMillis();
/***********************************/
Calendar cal = Calendar.getInstance();
try {
convertedDate = dateFormat.parse(dateString);
} catch (Exception e) {
return "";
}
cal.setTime(convertedDate);
/***********************************/
CharSequence myDateString = DateUtils.getRelativeTimeSpanString(cal.getTimeInMillis(), currentTime, DateUtils.MINUTE_IN_MILLIS);
return myDateString.toString();
Вы можете передать lacale в конструктор SimpleDateFormat –
SimpleFormat не имеет ничего общего с ним. его уже в GMT –
Calendar.getInstance() не дает времени в GMT. Он возвращает часовой пояс вашей машины. –