如何将日期时间从一个时区转换到另一个时区 [英] How to convert date time from one time zone to another time zone
问题描述
记录根据美国的时区保存,但如果我想向用户显示相同的记录,则应将服务器的日期时间(US时区)转换为用户的日期时间与用户的时区
The records are getting saved according to time zone of US but if I want to show the same record back to user it should convert the server date time with(US Time Zone) to user's date time with user's Time Zone
推荐答案
如果您输入googleJava日期更改时区或Javascript日期更改时区。您将有一个结果:
If you type in google "Java date change timezone" or "Javascript date change timezone". You will have one of your results:
在Java(源: http://www.coderanch.com/t/417443/java/java/Convert-Date-one-timezone-another )
Date date = new Date();
DateFormat formatter = new SimpleDateFormat("dd MMM yyyy HH:mm:ss z");
formatter.setTimeZone(TimeZone.getTimeZone("CET"));
// Prints the date in the CET timezone
System.out.println(formatter.format(date));
// Set the formatter to use a different timezone
formatter.setTimeZone(TimeZone.getTimeZone("IST"));
// Prints the date in the IST timezone
System.out.println(formatter.format(date));
Javascript(来源: http://www.techrepublic.com/article/convert-the-local-time- to-another-time-zone-with-this-javascript / 6016329 )
Javascript (source: http://www.techrepublic.com/article/convert-the-local-time-to-another-time-zone-with-this-javascript/6016329 )
// function to calculate local time
// in a different city
// given the city's UTC offset
function calcTime(city, offset) {
// create Date object for current location
d = new Date();
// convert to msec
// add local time zone offset
// get UTC time in msec
utc = d.getTime() + (d.getTimezoneOffset() * 60000);
// create new Date object for different city
// using supplied offset
nd = new Date(utc + (3600000*offset));
// return time as a string
return "The local time in " + city + " is " + nd.toLocaleString();
}
// get Bombay time
alert(calcTime('Bombay', '+5.5'));
这篇关于如何将日期时间从一个时区转换到另一个时区的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!