将Java.util.TimeZone字符串转换为Java.util.TimeZone



是否可以转换java.util.TimeZone字符串

sun.util.calendar.ZoneInfo[id="America/Los_Angeles",offset=-28800000,dstSavings=3600000,useDaylight=true,transitions=185,lastRule=java.util.SimpleTimeZone[id=America/Los_Angeles,offset=-28800000,dstSavings=3600000,useDaylight=true,startYear=0,startMode=3,startMonth=2,startDay=8,startDayOfWeek=1,startTime=7200000,startTimeMode=0,endMode=3,endMonth=10,endDay=1,endDayOfWeek=1,endTime=7200000,endTimeMode=0]]

回到java.util.TimeZone对象?

有效Java的一部分;项目10:

向所有提供的信息提供编程信息 ToString,或者客户可能会尝试解析字符串以检索其。

换句话说:如果可行,请不要试图解析toString的输出。如果您是强制这样做(但只有真正真实的是没有其他方法(,那么您可以这样做:

  • 您必须使用反射(TimeZone是一个抽象类,在toString输出中,您会看到此实例不是ZoneInfo,而是SimpleTimeZone(
  • 您必须在任何适用的构造函数中分析所需的数据并调用它

没有"轻松解决方案"来"反向映射" toStringTimeZone表示TimeZone对象。(在某些API中,您具有fromString方法或类似方法,新的Java日期API不是其中之一,也不应该是(。

最新更新