2017-01-18 85 views
0

Guy's,我在Spring控制器中使用一些代碼來獲取用戶時區('代碼在下面給出'),因爲我們開發的Web應用程序的服務器位於阿拉伯聯合酋長國和在datetime中給出的時間以UTC時間到達服務器。我正在使用來自印度的這個應用程序,所以我希望這個時間在應用程序中被視爲印度標準時間。所以我用這個方法來獲取用戶的時區,我儘量UTC時間轉換爲用戶的時區,但遺憾的是這種轉換不能正常工作,請幫我獲取用戶時區並將utc轉換爲用戶時區

// code for getting time zone 
TimeZone clientTimeZone = Calendar.getInstance(httpServletRequest.getLocale()).getTimeZone(); 

// This is the code used to convert UTC to client time zone 
DateFormat sdf = new SimpleDateFormat("hh:mm:ss"); 
sdf.setTimeZone(clientTimeZone); 
String time = sdf.format(dateTime); 
return time; 
+0

你的代碼似乎很好。你面臨什麼問題? –

+0

UTC轉換爲用戶時間標準不起作用,而我在服務器中部署此代碼。這個應用程序可以在世界任何地方使用,所以這個轉換是非常需要的 –

+0

您是否調試過服務器?你得到了什麼'clientTimeZone'和'dateTime'的值? –

回答

-1

UTC到IST轉換,

Date now = new Date(); 
SimpleDateFormat sdf = new SimpleDateFormat ("yyyy-MM-dd HH:mm:ss"); 
sdf.setTimeZone (TimeZone.getTimeZone ("IST")); 
System.out.println ("Time in IST is " + sdf.format (now)); 
+2

除了12小時時鐘和24小時時鐘之間的差異,這正是提問者已經試過的問題。我相信你錯過了問題的根源。 –

相關問題