12
votes

Obtenir l'heure et la date actuelles sur une période de 24 heures

J'ai des problèmes pour obtenir l'heure actuelle sur une période de 24 heures. Pour autant que je sache, "HH" devrait représenter l'heure actuelle sur une échelle de temps de 24 heures, toutefois, pour une raison quelconque, "HH" n'est pas interprétée du tout. C'est pourquoi la ligne de code suivante émet quelque chose comme "HH: 50: 06 UHR, 02. SEP." EM>:

DateFormat.format("HH:mm:ss 'Uhr', dd. MMM", new Date());


2 commentaires

Consultez ici: développeur.android.com/reference/android/text / Format / ... J'espère que cela vous aidera!


Sur les caractères de format du lien de Dimitris Makris: "Jusqu'au niveau API 17, seul adhkmmszy a été pris en charge. Notez que cette classe implémente de manière incorrecte k comme s'il s'agissait de h pour la compatibilité vers l'arrière. " Cela semble expliquer pourquoi la majuscule h est venue à travers comme h .


3 Réponses :


32
votes

Vous pouvez utiliser SimpleDateFormat pour le formater le chemin Vous aimez, cela fonctionne: xxx

aussi Version Android de Docs .


0 commentaires

1
votes

Essayez ceci:

      SimpleDateFormat sdf = new SimpleDateFormat("HH:mm:ss");
      String s = sdf.format(new Date());


0 commentaires

7
votes

HH est le spécificateur de format pendant une heure de la journée dans le format 24 heures (0-23; avec un décalage de 0) uniquement lorsque vous utilisez le simpledateformat classe pour les dates de formatage.

vous utilisez le Format Méthode du Android.Text.Format.DateFormat Classe classe, qui n'emploie pas cette notation; Au lieu de cela, il utilise le symbole k / < Code> kk pour afficher les heures dans le format 24 heures. Par conséquent, votre chaîne de format de date doit être spécifiée de la manière suivante: xxx


3 commentaires

Merci d'avoir élaboré à ce sujet.


C'est malheureux, étant donné que le Javadoc à développeur.android.com/reference / Android / Texte / Format / ... états "pour la documentation canonique des chaînes de format, voir SimpleDateFormat."


@ Roberttupelo-Schneck, oui, il n'est pas évident que la documentation canonique ne s'applique que lorsque vous utilisez les méthodes d'usine de la classe et non aux autres lorsque vous fournissez vos propres chaînes de format.