web-dev-qa-db-fra.com

Comment créer correctement une date avec un format spécifique?

J'ai le doute suivant lié à la création d'un format de date en Java.

Dans une application Java, je dois créer une date (la valeur doit être la date du jour) ainsi formatée: 2015-05-26 ( aaaa-mm-jj )

Je sais donc que je peux obtenir la date du jour en construisant simplement un nouvel objet Java.util.Date, de cette façon:

Date dataDocumento = new Date();

mais comment puis-je spécifier mon format de date?

Tnx

6
AndreaNobili

Essayez comme ça:

SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
Date c= sdf.parse("2015-05-26");
String date=sdf.format(c);
System.out.println(date);

Pour formater la date actuelle au format aaaa-MM-jj, vous pouvez essayer comme ceci

Date date = new Date();
String str = new SimpleDateFormat("yyyy-MM-dd").format(date);

Veuillez vous référer à SimpleDateFormat

18
Rahul Tripathi

Vous devez utiliser SimpleDateFormat:

SimpleDateFormat sf = new SimpleDateFormat("yyyy-MM-dd");

Note Cette MM correspond au mois et non à mm.

Et vous formatez votre date et analysez-la comme un objet Date comme ceci:

Date dt = sf.parse(sf.format(new Date()));

En utilisant format(new Date()), vous pouvez formater une new Date().

6
cнŝdk

Les objets Java.util.Date n'ont pas de format par eux-mêmes. Ce ne sont que des valeurs d'horodatage, tout comme une int n'est qu'un nombre, sans format inhérent. Donc, il n’existe pas de "objet Date au format yyyy-MM-dd".

Le format est déterminé au moment où vous convertissez la Date en une String. Vous pouvez utiliser SimpleDateFormat pour convertir une Date en une String dans un format spécifique. Par exemple:

Date date = new Date();

DateFormat fmt = new SimpleDateFormat("yyyy-MM-dd");
String text = fmt.format(date);

System.out.println(text);
4
Jesper

Essayez de suivre: 

String currentDate = new SimpleDateFormat("dd.MM.yyyy").format(new Date());
2
Afsun Khammadli

Utilisez le suivant-

String currentDate = new SimpleDateFormat("dd.MM.yyyy").format(new Date());

MoreOver Vous pouvez utiliser n'importe quel formet donné si nécessaire.

new SimpleDateFormat("dd/MM/yyyy").format(new Date());
new SimpleDateFormat("dd-MM-yy:HH:mm:SS").format(new Date());
new SimpleDateFormat("dd-MM-yy:HH:mm:SS Z").format(new Date());
2
user4768611

Essayez ce code:

import Java.util.Date;
import Java.text.DateFormat;
import Java.text.SimpleDateFormat;

public class GetCurrentDateTime {
    public static void main(String[] args) {     
        DateFormat dateFormat = new SimpleDateFormat("yyyy/MM/dd"); // you can change the format as you like
        Date date = new Date();
        System.out.println(dateFormat.format(date));
    }
}
2

Vous pouvez utiliser une classe de format de date simple pour cela:

import Java.text.SimpleDateFormat;
     SimpleDateFormat sdf = new SimpleDateFormat("yyyy-mm-dd");
     Date dataDocumento = new Date();
     sdf.format(dataDocumento);
2
sampopes

Code

importer Java.text.SimpleDateFormat; importer Java.util.Date;

/**
 *
 * Java program to show how to format date in Java using SimpleDateFormat
 * Examples. Java allows to include date, time and timezone information
 * while formatting dates in Java.
 *
 * @author http://Java67.blogspot.com
 */
public class DateFormatExample {

    public static void main(String args[]) {

        // This is how to get today's date in Java
        Date today = new Date();

        //If you print Date, you will get un formatted output
        System.out.println("Today is : " + today);

        //formatting date in Java using SimpleDateFormat
        SimpleDateFormat DATE_FORMAT = new SimpleDateFormat("dd-MM-yyyy");
        String date = DATE_FORMAT.format(today);
        System.out.println("Today in dd-MM-yyyy format : " + date);

        //Another Example of formatting Date in Java using SimpleDateFormat
        DATE_FORMAT = new SimpleDateFormat("dd/MM/yy");
        date = DATE_FORMAT.format(today);
        System.out.println("Today in dd/MM/yy pattern : " + date);

        //formatting Date with time information
        DATE_FORMAT = new SimpleDateFormat("dd-MM-yy:HH:mm:SS");
        date = DATE_FORMAT.format(today);
        System.out.println("Today in dd-MM-yy:HH:mm:SS : " + date);

        //SimpleDateFormat example - Date with timezone information
        DATE_FORMAT = new SimpleDateFormat("dd-MM-yy:HH:mm:SS Z");
        date = DATE_FORMAT.format(today);
        System.out.println("Today in dd-MM-yy:HH:mm:SSZ : " + date);

    } 

}

Sortie

Today is : Tue May 26 16:11:27 IST 2015

Today in dd-MM-yyyy format : 26-05-2015

Today in dd/MM/yy pattern : 26/05/15

Today in dd-MM-yy:HH:mm:SS : 26-05-15:16:11:316

Today in dd-MM-yy:HH:mm:SSZ : 26-05-15:16:11:316 +0530
1
BhandariS