将XMLGregorianCalendar对象转换为'MM/dd/yyyy hh:mm‘字符串的最佳方法是什么?
发布于 2013-02-04 22:16:10
首先使用XMLGregorianCalendar#toGregorianCalendar()
从其中获取一个java.util.Calendar
实例。
Calendar calendar = xmlGregorianCalendar.toGregorianCalendar();
从这一步开始,通过通常的方式借助SimpleDateFormat
,一切都是显而易见的。
SimpleDateFormat formatter = new SimpleDateFormat("MM/dd/yyyy hh:mm");
formatter.setTimeZone(calendar.getTimeZone());
String dateString = formatter.format(calendar.getTime());
我只是想知道您是否实际上不想使用HH
而不是hh
,因为您不需要格式化am/pm标记。
发布于 2013-02-04 22:22:26
为此,您可以使用toGregorianCalendar()
方法。
例如:
SimpleDateFormat sdf = new SimpleDateFormat("MM/dd/yyyy hh:mm");
String date = sdf.format(xmlGregorianCalendar.toGregorianCalendar().getTime());
如果需要使用toGregorianCalendar(TimeZone timezone, Locale aLocale, XMLGregorianCalendar defaults)
将日历转换为不同TimeZone和语言环境
发布于 2013-02-04 22:17:34
这是您正在寻找的示例:
XMLGregorianCalendar date = ...; // initialization is out of scope for this example
SimpleDateFormat sdf = new SimpleDateFormat("MM/dd/yyyy hh:mm");
GregorianCalendar gc = date.toGregorianCalendar();
String formatted_string = sdf.format(gc.getTime());
https://stackoverflow.com/questions/14688526
复制相似问题