将java.util.GregorianCalendar.toString()重新转换回GregorianCalendar

将java.util.GregorianCalendar.toString()重新转换回GregorianCalendar,java,object,type-conversion,cmis,opencmis,Java,Object,Type Conversion,Cmis,Opencmis,我正在使用CMIS和Java,我从一个文档中加载了所有属性,并将它们写入一个xml文件 我使用Object.toString()方法在xml文件中创建文本节点。因此,我使用.toString()方法对GregorianCalendar方法进行字符串化,它创建了如下输出 java.util.GregorianCalendar[time=?,areFieldsSet=false,areAllFieldsSet=false,lenient=true,zone=sun.util.calendar.Zon

我正在使用CMIS和Java,我从一个文档中加载了所有属性,并将它们写入一个xml文件

我使用Object.toString()方法在xml文件中创建文本节点。因此,我使用.toString()方法对GregorianCalendar方法进行字符串化,它创建了如下输出

java.util.GregorianCalendar[time=?,areFieldsSet=false,areAllFieldsSet=false,lenient=true,zone=sun.util.calendar.ZoneInfo[id="GMT",offset=0,dstSavings=0,useDaylight=false,transitions=0,lastRule=null],firstDayOfWeek=1,minimalDaysInFirstWeek=1,ERA=?,YEAR=2008,MONTH=7,WEEK_OF_YEAR=?,WEEK_OF_MONTH=?,DAY_OF_MONTH=18,DAY_OF_YEAR=?,DAY_OF_WEEK=?,DAY_OF_WEEK_IN_MONTH=?,AM_PM=?,HOUR=?,HOUR_OF_DAY=12,MINUTE=0,SECOND=0,MILLISECOND=0,ZONE_OFFSET=?,DST_OFFSET=?]
我需要将这个字符串解析回java.util.GregorianCalendar对象

你能帮我解决这个大问题吗


谢谢。

如果您可以修改节点表示,我建议使用一种更简单的方法:使用

Calendar.getTimeInMillis()
而不是toString()。它会把时间戳还给你。然后,要将其转换回,可以使用:

Calendar.getInstance().setTimeInMillis(Long.parseLong(yourMillis))

我昨天测试了你的解决方案,它成功了,谢谢!:)