Convertir Java Calendrier Grégorien à la Chaîne

J'ai un Livre de Classe et l'un de ses attributs est:

private Calendar publish_date;

Maintenant, je voudrais insérer un nouveau Livre dans un library.xml fichier. J'ai donc créer un livre:

Book b = new Book();
b.setPublish_date(new GregorianCalendar(1975, 5, 7));

J'ai besoin de cette date à une Chaîne pour que je puisse écrire dans le fichier XML (à l'aide de DOM). J'ai donc effectuer:

    Element publish_date = doc.createElement("publish_date");
    SimpleDateFormat formatter=new SimpleDateFormat("yyyy MM DD"); 
    publish_date.appendChild(doc.createTextNode(formatter.format(b.getPublish_date())));
    book.appendChild(publish_date);

mais c'est l'erreur:

java.lang.IllegalArgumentException: Cannot format given Object as a Date
at java.text.DateFormat.format(DateFormat.java:301)
at java.text.Format.format(Format.java:157)
at fileLock.FileLock.updateLibrary(FileLock.java:127)
at fileLock.FileLock.main(FileLock.java:63)

alors, quelle est la bonne façon de convertir un Calendrier (Calendrier Grégorien) à une chaîne de caractères? Grâce

essayez de formateur.format b.getPublish_date().getTime()); la méthode de mise en forme prend une Date comme le type de paramètre

OriginalL'auteur SagittariusA | 2014-07-14