是否可以转换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
( - 您必须在任何适用的构造函数中分析所需的数据并调用它
没有"轻松解决方案"来"反向映射" toString
的TimeZone
表示TimeZone
对象。(在某些API中,您具有fromString
方法或类似方法,新的Java日期API不是其中之一,也不应该是(。