无法将java.lang.String转换为java.util.GregorianCalendar

无法将java.lang.String转换为java.util.GregorianCalendar,java,Java,我得到的字符串如下:java.util.GregorianCalendar[time=1407440700000,areFieldsSet=true,areAllFieldsSet=true,lenient=false,zone=sun.util.calendar.ZoneInfo[id=“GMT+05:30”,offset=19800000,dstSaves=0,useDaylight=false,transitions=0,lastRule=null],周的第一天=1,周的第一天=1,纪元=

我得到的字符串如下:
java.util.GregorianCalendar[time=1407440700000,areFieldsSet=true,areAllFieldsSet=true,lenient=false,zone=sun.util.calendar.ZoneInfo[id=“GMT+05:30”,offset=19800000,dstSaves=0,useDaylight=false,transitions=0,lastRule=null],周的第一天=1,周的第一天=1,纪元=1,年=2014,月=7,年的周=32,月的周=2,月的日=8,年的日=220,周的日=6,月的周的日=2,上午下午=0,小时=1,日的小时=1,分钟=15,秒=0,毫秒=0,分区偏移=19800000,DST偏移=0]

以下代码给出了例外情况:

Object publishDateGen =  (Object)publishedDate;
GregorianCalendar calanderFromPublishedDate = (GregorianCalendar)publishDateGen;
此处发布日期是需要转换的字符串


谢谢

为什么你有这样的
字符串
?您不能将
字符串
强制转换为`GregorianCalendar`。没有一个股票解析器接受
GregorianCalendar.toString()
的输出并生成
GregorianCalendar
。如果您试图使用
toString
对值进行序列化,您应该研究其他Java序列化机制,或者自己解析它。您在期望中误用了术语
cast
您尝试过
GregoriaCalender.deserialize()
了吗?首先,找出上游代码只是打印
到字符串的原因。