Can you help in understanding this code. Looks like it is getting timezone As an off-set from GMT in hours. But not sure...
what is the consideration for DST in the code ?
Please help.
// Time zone offset in hours from GMT
TimeZone timezone = TimeZone.getDefault();
String result = CCUtil.getTimeZoneOffSet(timezone);
CCUtil.java
public static String getTimeZoneOffSet(TimeZone tz) {
String result = "";
int offSet = tz.getOffset(Calendar.getInstance().getTimeInMillis());
String sign = "-";
if (offSet >= 0)
sign = "+";
else
offSet = Integer.parseInt(Integer.toString(offSet).substring(1));
int minutes = offSet / (1000 * 60);
int hours = minutes / 60;
minutes = minutes % 60;
result = sign + lpad(Integer.toString(hours), "00") + ":"
+ lpad(Integer.toString(minutes), "00");
return result;
}
private static String lpad(String str, String pad) {
int strLen = str.length();
int padLen = pad.length();
String result = str;
if (strLen < padLen) {
result = pad.substring(0, padLen - strLen) + result;
}
return result;
}