問題描述
我想使用 XMLGregorianCalendar
格式的日期發(fā)送到 Web 服務(wù).Web 服務(wù)需要 yyyy-dd-mm
格式的信息.我使用下面的代碼創(chuàng)建一個 XMLGregorianCalendar
并將其發(fā)送到 Web 服務(wù).
I want to use a Date in XMLGregorianCalendar
format for sending to a web service. The web service expects information in yyyy-dd-mm
format. I use the below code to create an XMLGregorianCalendar
and send it to web service.
Date dob = null;
DateFormat df = new SimpleDateFormat("dd/MM/yyyy");
try {
XMLGregorianCalendar date2;
dob = df.parse("13/06/1983");
GregorianCalendar c = new GregorianCalendar();
c.setTimeInMillis(dob.getTime());
date2 = DatatypeFactory.newInstance().newXMLGregorianCalendar(c);
System.out.println(date2);
}
catch(DatatypeConfigurationException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
catch(ParseException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
不幸的是,我總是得到 1983-06-13T00:00:00.000-04:00
的日期.時(shí)間也包含在輸出中.是否可以只獲取日期?你能幫幫我嗎?
Unfortunately I always get the date as 1983-06-13T00:00:00.000-04:00
. Time is also getting included in the output. Is it possible to get only the date? Could you please help me?
推薦答案
你不需要指定SimpleDateFormat",很簡單:您必須在不想顯示的地方指定常量DatatypeConstants.FIELD_UNDEFINED"
you don't need to specify a "SimpleDateFormat", it's simple: You must do specify the constant "DatatypeConstants.FIELD_UNDEFINED" where you don't want to show
GregorianCalendar cal = new GregorianCalendar();
cal.setTime(new Date());
XMLGregorianCalendar xmlDate = DatatypeFactory.newInstance().newXMLGregorianCalendarDate(cal.get(Calendar.YEAR), cal.get(Calendar.MONTH)+1, cal.get(Calendar.DAY_OF_MONTH), DatatypeConstants.FIELD_UNDEFINED);
這篇關(guān)于在 XMLGregorianCalendar 中指定日期格式的文章就介紹到這了,希望我們推薦的答案對大家有所幫助,也希望大家多多支持html5模板網(wǎng)!