Java 为什么不是';这个时区设置是否正确?
给出以下(Android)代码: 我得到以下输出:Java 为什么不是';这个时区设置是否正确?,java,android,timezone,Java,Android,Timezone,给出以下(Android)代码: 我得到以下输出: sun.util.calendar.ZoneInfo[id="Europe/London",offset=0,dstSavings=3600000,useDaylight=true,transitions=242,lastRule=java.util.SimpleTimeZone[id=Europe/London,offset=0,dstSavings=3600000,useDaylight=true,startYear=0,startMode
sun.util.calendar.ZoneInfo[id="Europe/London",offset=0,dstSavings=3600000,useDaylight=true,transitions=242,lastRule=java.util.SimpleTimeZone[id=Europe/London,offset=0,dstSavings=3600000,useDaylight=true,startYear=0,startMode=2,startMonth=2,startDay=-1,startDayOfWeek=1,startTime=3600000,startTimeMode=2,endMode=2,endMonth=9,endDay=-1,endDayOfWeek=1,endTime=3600000,endTimeMode=2]]
sun.util.calendar.ZoneInfo[id="GMT",offset=0,dstSavings=0,useDaylight=false,transitions=0,lastRule=null]
为什么没有设置我的
America\New York
时区?试试这个:cal.setTimeZone(timezone.getTimeZone(“America/New_York”)代码>
还不完全确定,但我认为一个错误的时区ID可能是你的问题
另请参见:尝试以下操作:cal.setTimeZone(TimeZone.getTimeZone(“美国/纽约”)代码>
还不完全确定,但我认为一个错误的时区ID可能是你的问题
另请参见:问题似乎是错误的
乔达时间
仅供参考,这是《Joda Time》中的相同代码。在Joda Time中,DateTime对象知道自己分配的时区,这与java.util.Date对象不同
DateTimeZone timeZone = DateTimeZone.forID( "America/New_York" );
DateTime now = DateTime.now( timeZone );
如果需要,调整到UTC
DateTime dateTimeUtc = now.withZone( DateTimeZone.UTC );
如果需要与其他类一起使用,请转换为java.util.Date
java.util.Date date = dateTime.toDate();
这个问题的答案似乎是错误的
乔达时间
仅供参考,这是《Joda Time》中的相同代码。在Joda Time中,DateTime对象知道自己分配的时区,这与java.util.Date对象不同
DateTimeZone timeZone = DateTimeZone.forID( "America/New_York" );
DateTime now = DateTime.now( timeZone );
如果需要,调整到UTC
DateTime dateTimeUtc = now.withZone( DateTimeZone.UTC );
如果需要与其他类一起使用,请转换为java.util.Date
java.util.Date date = dateTime.toDate();
为了澄清,更正在“纽约”中使用了下划线:America/New_York
。见此。为了澄清,更正在“纽约”中使用了下划线:America/New_York
。看这个。