【发布时间】:2011-01-06 17:10:37
【问题描述】:
我通过序列化 boost::posix_time::ptime 结构生成了以下 XML。我想用这个 XML 创建一个 Java Date 对象。
<timeStamp class_id="0" tracking_level="0" version="0">
<ptime_date class_id="1" tracking_level="0" version="0">
<date>20100119</date>
</ptime_date>
<ptime_time_duration class_id="2" tracking_level="0" version="0">
<time_duration_hours>11</time_duration_hours>
<time_duration_minutes>53</time_duration_minutes>
<time_duration_seconds>33</time_duration_seconds>
<time_duration_fractional_seconds>0</time_duration_fractional_seconds>
</ptime_time_duration>
</timeStamp>
下面是应该通过反序列化此 XML 来构造 Date 对象的 Java 代码。我面临的问题是如何将
Integer date = timeStamp.getPtimeDate().getDate();
Integer hrs = timeStamp.getPtimeTimeDuration().getTimeDurationHours();
Integer mins = timeStamp.getPtimeTimeDuration().getTimeDurationMinutes();
Integer secs = timeStamp.getPtimeTimeDuration().getTimeDurationSeconds();
Calendar cal = Calendar.getInstance();
//TODO
//cal.set(year, month, day, hrs, mins, secs);
Date date = cal.getTime();
有什么提示吗?
编辑:
我正在寻找一些不需要将日期转换为字符串然后拆分它的优雅解决方案。那将是我最后的手段。
谢谢
【问题讨论】:
标签: java c++ xml serialization boost