我生成的XML格式包含有效的XML
格式的日期,我還需要它包含UTC
偏移量。格式化XML的日期以包括UTC偏移量
我尤斯groovy
,但我會告訴我使用而不是Java
代碼(在兩種語言的答案是好的):
Calendar c = Calendar.getInstance();
long timeZoneOffset = c.timeZone.getOffset(c.getTimeInMillis())/(1000*60*60);
SimpleDateFormat formatter = new java.text.SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss");
formatter.format(c.getTime()) + "+0" + timeZoneOffset + ":00";
上面的代碼give4s我2011-06-12T07:23:25.000+03:00
,但是這個代碼有兩個問題:
- 這是醜陋的,並且可能不是最好的方式做到這一點
- 它不會像印度時區工作(GMT +5:30),尼泊爾(GMT +5:45)
我試着用new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss Z")
的時區,但它給了我2011-06-12T07:23:25.000+0300
這是不正確的格式(+0300
代替的+03:00
)。
以我需要的方式格式化日期的其他方法? (最好沒有第三方)
謝謝 - 這是最簡單的解決方案,可在任何地方安裝JRE6。 – RonK 2011-06-12 12:23:22