Je veux convertir l'objet org.joda.time.LocalDate en java.util.GregorianCalendar. java.util.GregorianCalendar mois affiché de l'index 0 à 11. Donc Octobre est représenté par le chiffre 9, Novembre avec le chiffre 10 .... Alors que pour LocalDate Octobre est représenté par le chiffre 10, novembre avec 11 ....convertir la date en GregorianCalendar Format de date
Je travaille sur une application existante où ils ont utilisé GregorianCalendar. Maintenant, je veux convertir ma valeur LocalDate que j'ai reçue à travers un appel de méthode en format GregorianCalendar afin que les valeurs du mois correspondent.
J'ai déjà recherché de nombreux blogs mais je n'ai pas pu convertir la valeur. Ci-dessous le code que j'ai essayé mais qui ne pouvait toujours pas changer le format de la date au format GregorianCalendar.
code java:
import java.text.SimpleDateFormat;
import java.util.GregorianCalendar;
import org.joda.time.DateTime;
import org.joda.time.LocalDate;
class Convert{
public static String format(GregorianCalendar calendar){
SimpleDateFormat fmt = new SimpleDateFormat("dd-M-yyyy");
fmt.setCalendar(calendar);
String dateFormatted = fmt.format(calendar.getTime());
System.out.println("--date formatted--- " + dateFormatted);
return dateFormatted;
}
void convertLocalDateToGregorianCalendar(){
LocalDate localDate = new LocalDate();
DateTime dateTimeObj = localDate.toDateTimeAtStartOfDay();
GregorianCalendar gc = new GregorianCalendar();
gc.setTimeInMillis(dateTimeObj.getMillis());
String formattedGCDate = format(gc);
System.out.println("converted LocalDate to GregorianDate date value " + formattedGCDate);
}
public static void main(String[] args) {
new Convert().convertLocalDateToGregorianCalendar();
} }
Sortie:
--date formatted--- 13-10-2016
converted LocalDate to GregorianDate date value 13-10-2016
valeur Date prévue dans la sortie: 13-9-2016 (En ce qui concerne GregorianCalendar mois Octobre est à représenter le chiffre 9).
PS: java5 est la version que j'utilise.