java - XMLGregorianCalendar 日期格式 'dd/MM/yyyy HH:mm:ss.SSS'

标签 java xml date

String formatA ="yyyy-MM-dd'T'HH:mm:ss'Z'";
String formatB = "dd/MM/yyyy HH:mm:ss.SSS";
try {
    XMLGregorianCalendar gregFmt = DatatypeFactory.newInstance().newXMLGregorianCalendar(new SimpleDateFormat(formatB).format(new Date()));
    System.out.println(gregFmt);
} catch (DatatypeConfigurationException e) {
};

我正在尝试格式化 XMLGregorianCalendar 日期。 上面的代码格式很好地适合格式 "yyyy-MM-dd'T'HH:mm:ss'Z'"

但是对于 formatB dd/MM/yyyy HH:mm:ss.SSS 它会抛出错误

java.lang.IllegalArgumentException

就如何修复它提供建议。非常感谢!

日志

Exception in thread "main" java.lang.IllegalArgumentException: 23/08/2017 16:13:04.140
at com.sun.org.apache.xerces.internal.jaxp.datatype.XMLGregorianCalendarImpl$Parser.parseAndSetYear(XMLGregorianCalendarImpl.java:2887)
at com.sun.org.apache.xerces.internal.jaxp.datatype.XMLGregorianCalendarImpl$Parser.parse(XMLGregorianCalendarImpl.java:2773)
at com.sun.org.apache.xerces.internal.jaxp.datatype.XMLGregorianCalendarImpl.<init>(XMLGregorianCalendarImpl.java:435)
at com.sun.org.apache.xerces.internal.jaxp.datatype.DatatypeFactoryImpl.newXMLGregorianCalendar(DatatypeFactoryImpl.java:536)
at test.test.main(test.java:19)

第 19 行是第 4 行,在上面的代码“XMLGregorianCalendar gregFmt...”

最佳答案

newXMLGregorianCalendar(string) 接受的格式在 the XML specs 中描述。并且与您尝试使用的 formatB 不同。

关于java - XMLGregorianCalendar 日期格式 'dd/MM/yyyy HH:mm:ss.SSS',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45833927/

相关文章:

java - 使用 ParseRecyclerQueryAdapter

Javascript:Date.setHours(12, 0, 0, 0) 将日期调回一天?

python - 使用 Pandas Dataframes 根据间隙长度计算事件日期

javascript - 在每年的两个日期之间自动启用 Javascript(例如圣诞节)

java - 我应该使用哪个 API 从图像中提取信息?

java - 如何从 Java 调用在 Scala 包对象上定义的方法? (斯卡拉 2.10.x)

java - sax 解析器从 xml 返回空字符串

json - 如何访问node.js中的json嵌套对象

android - 是否可以在 android 中定义随配置变化的 XML 常量

java - Netflix Karyon 不使用 Governator 创建资源类