Is it time to charge your devices.?
Android change date format from UTC to local time with the following code snippet. This is one of those code snippets I find myself coming back to again and again so it was time to make it into a post.
Android change date format from UTC to local time
The following snippet changes from format:
2017-03-27 20:00:00UTC
to 03/27/2017 - 1200 PM
public String getNewDate(){
if (getOldDate() == null){
return "";
}
SimpleDateFormat oldFormatter = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss'UTC'");
oldFormatter.setTimeZone(TimeZone.getTimeZone("UTC"));
Date value = null;
String dueDateAsNormal ="";
try {
value = oldFormatter.parse(getOldDate());
SimpleDateFormat newFormatter = new SimpleDateFormat("MM/dd/yyyy - hh:mm a");
newFormatter.setTimeZone(TimeZone.getDefault());
dueDateAsNormal = newFormatter.format(value);
} catch (ParseException e) {
e.printStackTrace();
}
return dueDateAsNormal;
}
The `getNewDate` function will call the getOldDate() function and will reformat the date String that it provides. It uses uses oldFormatter and newFormatter strings. Feel free to update these string to match your date format and everything should work peachy.
If you are looking for something similar but for PHP see my post PHP change date format.
Her is some help to get the formatting right:
Letter Date or Time Component Presentation Examples
------ ---------------------- ------------------ -------------------------------------
G Era designator Text AD
y Year Year 1996; 96
Y Week year Year 2009; 09
M/L Month in year Month July(MMMM); Jul(MMM); 07(MM)
w Week in year Number 27
W Week in month Number 2
D Day in year Number 189
d Day in month Number 10
F Day of week in month Number 2
E Day in week Text Tuesday; Tue
u Day number of week Number 1
a Am/pm marker Text PM
H Hour in day (0-23) Number 0
k Hour in day (1-24) Number 24
K Hour in am/pm (0-11) Number 0
h Hour in am/pm (1-12) Number 12
m Minute in hour Number 30
s Second in minute Number 55
S Millisecond Number 978
z Time zone General time zone Pacific Standard Time; PST; GMT-08:00
Z Time zone RFC 822 time zone -0800
X Time zone ISO 8601 time zone -08; -0800; -08:00
Let me know if this code snipped helped you, thanks!
Cheers!
Pingback: PHP change date format - Lehel Matyus