TimeZone timeZone = TimeZone.getTimeZone("Asia/Calcutta");
int offset1 = timeZone.getRawOffset();
System.out.println("offset = "+ offset);
int offsetHrs = offset / 1000 / 60 / 60;
int offsetMins = offset / 1000 / 60 % 60;
System.out.println("offsetHrs="+ offsetHrs);
System.out.println("offsetMins="+ offsetMins);
GMTOffset = offsetHrs + ":" + offsetMins;
System.out.println("GMTOffset = " + utzOffset);
输出将是
偏移量 = 19800000
偏移小时=5
offsetMins=30
格林威治标准时间偏移 = 5:30
我在 ms sql server 中使用这个偏移值来转换时区。sql server 将采用以下格式
(+/-)HH:MM
我的结果是 5:30 但它给出了一个无效的时区错误,它应该是 +5:30 。
在另一种情况下
TimeZone timeZone = TimeZone.getTimeZone("Etc/GMT");
在这种情况下,偏移量将为“0”
但是 ms sql 只需要 +00:00 或 -00:00 (+/- 符号必须)
任何人都可以帮助我如何以 (+/-)HH:MM 格式格式化偏移量。