我正在使用
如何转换
我已检查过TimeZone列表,但PT,MT,CT和ET不在时区列表中。
我以为我可以映射PT,MT,CT,ET,如:
<!--- use Pacific time as sample --->
<cfset varTimeZone = "PT">
<cfif varTimeZone is "PT">
<cfset useTZ = "US/Pacific">
<cfelseif varTimeZone is "ET">
<cfset useTZ = "US/Eastern">
<cfelseif varTimeZone is "CT">
<cfset useTZ = "US/Central">
<cfelseif varTimeZone is "MT">
<cfset useTZ = "US/Mountain">
</cfif>
<cfdump var="#application.tz.castFromUTC(utcDate,useTZ)#">
如果我的日期类似于&#34; 2017-10-25 03:41:29.000&#34;这是UTC。我需要在PST中显示它。
另一个要考虑的是服务器使用&#34; America / New_York&#34;时区。获取服务器时区:
<!--- server timezone --->
<cfset tz = CreateObject("java", "java.util.TimeZone")>
<cfset tz = tz.getDefault()>
<cfoutput>TimeZone: #tz.getDisplayName()# (#tz.getID()#)</cfoutput>
如果服务器是UTC,那将更容易。