10
votes

Comment convertir l'objet de chaîne en objet de date?

Comment puis-je convertir un objet de chaîne en un objet de date?

Je pense que je dois faire quelque chose comme ceci: P>

Date d=(some conversion ) "String "


0 commentaires

8 Réponses :


21
votes
    SimpleDateFormat dateFormat = new SimpleDateFormat("dd.MM.yyyy");
    Date date = dateFormat.parse("1.1.2001");
For details refer to:  SimpleDateFormat documentation

2 commentaires

Je pense que vous manquez un 'y' ou deux.


Vous aviez raison, merci pour la note.



1
votes

Vous devriez analyser la chaîne avec la classe SimpleDateFormat


0 commentaires

4
votes

voir Tutoriel Java de Sun et la classe SimpleDateFormat


0 commentaires

3
votes

Utilisez un SimpleDateDormat avec une chaîne de format, qui correspond à votre format réel: xxx


0 commentaires

0
votes

Utilisez

Date date = DateFormat.getInstance.parse( dateString );


1 commentaires

Cela ne vous donne aucun contrôle sur ce que le format de la chaîne devrait ressembler, il est donc peu probable que cela soit utile. Meilleure utilisation SimpleDateFormat , ce qui vous permet de spécifier le format à attendre.




9
votes

La conversion de date à chaîne est une opération d'analyse relativement complexe, et non quelque chose que vous pouvez faire avec une simple distribution comme vous essayez.

Vous devrez utiliser un DateFormat . Il peut être aussi simple que: xxx

mais cela modifie le format de date prévu en fonction des paramètres locaux de la machine. Si vous avez un format de date spécifique, vous pouvez utiliser SimpleDateDeformat < / a>: xxx

Notez que la méthode d'analyse s'attendra toujours à un format spécifique et n'essaiera pas de deviner ce qui pourrait être signifié s'il reçoit un format différent.


0 commentaires

0
votes

Vous pouvez convertir l'objet de chaîne en objet de date à l'aide de cette méthode. Et ce code Java est testé et exécuté composant dans mon environnement.

public static Date parseStringAsDate(String dateStr, String format) throws ParseException
{
    if(null==dateStr || "".equals(dateStr))
        throw new IllegalArgumentException("dateStr must not be null or empty");
    DateFormat df = new SimpleDateFormat(format);
    return df.parse(dateStr);
}


0 commentaires