49 votes

Format date/heure

Comment puis-je formater: "2010-07-14 09:00:02" date pour représenter juste 9:00 ?

112voto

BalusC Points 498232

Utiliser SimpleDateFormat pour convertir entre une chaîne de date et d'un réel Date objet. avec un Date comme point de départ, vous pouvez facilement appliquer la mise en forme basée sur des modèles différents comme il est défini dans la javadoc de l' SimpleDateFormat (cliquez sur le code en bleu le lien pour la Javadoc).

Voici un coup d'envoi exemple:

String originalString = "2010-07-14 09:00:02";
Date date = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").parse(originalString);
String newString = new SimpleDateFormat("H:mm").format(date); // 9:00

14voto

Adam Points 14766
 Date date = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").parse("2010-07-14 09:00:02");
String time = new SimpleDateFormat("H:mm").format(date);
 

http://download.oracle.com/javase/1.4.2/docs/api/java/text/SimpleDateFormat.html

11voto

Petr Pudlák Points 25113

Une méthode très simple consiste à utiliser Formatter (voir conversions date / heure ) ou plus directement String.format comme dans

 String.format("%tR", new Date())
 

4voto

MikeTheReader Points 2739

Je suppose que votre première chaîne est un objet Date réel, corrigez-moi si je me trompe. Si tel est le cas, utilisez l'objet SimpleDateFormat: http://download.oracle.com/javase/6/docs/api/java/text/SimpleDateFormat.html . La chaîne de format "h: mm" devrait en prendre soin.

4voto

Amir Afghani Points 17519

En utilisant un SimpleDateFormatter

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X