Я пытаюсь отформатировать gregorian календарь в определенном формате, чтобы выполнить веб-сервис, но я не знаю, как сделать его изящным. Прямо сейчас я пытаюсь отформатировать, получив час минуты и разобрав их, но это выглядит ужасно. Мне нужно отформатировать его как xsd: dateTime 2001-10-26T21: 32: 52, 2001 Любая помощь оценивается. Спасибо!Java-григорианский календарь в определенном формате
1
A
ответ
4
Должен быть прямой перемещение вперед, чтобы настроить формат, что вам нужно ... это производит "2013-06-08T20: 56: 25Z"
SimpleDateFormat timeFormat = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss'Z'");
timeFormat.setTimeZone(TimeZone.getTimeZone("GMT"));
String time = timeFormat.format(new Date());
+0
Элегантный и работающий идеально! благодаря –
0
Использование joda:
DateTime dt = new DateTime();
DateTimeFormatter fmt = ISODateTimeFormat.dateTime();
String str = fmt.print(dt);
1
Попробуйте следующее:
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
import java.util.GregorianCalendar;
public class ConversionExamplesDate {
// Convert from String to date
private void stringToDate() {
try {
Date date1;
date1 = new SimpleDateFormat("MM/dd/yy").parse("05/18/05");
System.out.println(date1);
Date date2 = new SimpleDateFormat("MM/dd/yyyy").parse("05/18/2007");
System.out.println(date2);
} catch (ParseException e) {
e.printStackTrace();
}
}
// Convert from millisecs to a String with a defined format
private void calcDate(long millisecs) {
SimpleDateFormat date_format = new SimpleDateFormat("MMM dd,yyyy HH:mm");
Date resultdate = new Date(millisecs);
System.out.println(date_format.format(resultdate));
}
private void writeActualDate(){
Calendar cal = new GregorianCalendar();
Date creationDate = cal.getTime();
SimpleDateFormat date_format = new SimpleDateFormat("MMM dd,yyyy HH:mm");
System.out.println(date_format.format(creationDate));
}
public static void main(String[] args) {
ConversionExamplesDate convert = new ConversionExamplesDate();
convert.stringToDate();
convert.calcDate(System.currentTimeMillis());
convert.writeActualDate();
}
}
Посмотрите на javadoc 'SimpleDateFormat'. – fge
Вы можете использовать SimpleDateFommat, используя формат «yyyy-MM-dd'T'HH: mm: ss, yyyy» или simular – MadProgrammer