【发布时间】:2021-06-08 04:26:05
【问题描述】:
使用java.time.Instant 和javax.xml.datatype.XMLGregorianCalendar,我试图在不损失精度的情况下从一个转换为另一个。
为什么这个测试没有通过以及如何解决它?
class FooTest {
@Test
void shouldConvertBackToSameInstant() throws DatatypeConfigurationException {
Instant initialInstant = Instant.now();
XMLGregorianCalendar xmlGregorianCalendar = DatatypeFactory.newInstance().newXMLGregorianCalendar(String.valueOf(initialInstant));
Instant convertedInstant = xmlGregorianCalendar.toGregorianCalendar().toInstant();
assertEquals(initialInstant, convertedInstant);
}
}
org.opentest4j.AssertionFailedError:
Expected :2021-03-10T08:34:30.700715078Z
Actual :2021-03-10T08:34:30.700Z
【问题讨论】:
标签: java java.time.instant xmlgregoriancalendar