0
votes

Format DateTime requis Modifications comme prévu

Je veux afficher le temps comme "02 sept. 2020 à 12h24" (Mind the à entre date et heure).

Le format actuel que j'utilise est "DD mmm Yyyy HH: MM AAA"
qui affiche le temps comme "28 août 2020 11:32 am" .

Comment puis-je mettre un à avant le temps?


0 commentaires

4 Réponses :


0
votes
SimpleDateFormat formatter = new SimpleDateFormat("dd MMM yyyy 'at' HH:mm:ss z"); 
Date date = new Date(System.currentTimeMillis()); 
System.out.println(formatter.format(date));

6 commentaires

Pouvez-vous pls partager l'échantillon


Quelle langue est-ce censée être? Qu'est-ce que convert , quel est tostring ?


Formateur SimpleDateFormat = Nouveau SimpleDateFormat ("DD mmm aaaa aaaa" à 'HH: MM: SS Z "); Date Date = nouvelle date (System.currentTtimemillis ()); System.out.println (format.format (date));


Désolé, je suis actuellement en train d'utiliser c #. Mais j'ai partagé le code ci-dessus à Java.


Ensuite, vous devriez remplacer le contenu de la réponse avec ce commentaire, c # réponses sont inutiles ici.


S'il vous plaît, n'enseigne pas les jeunes à utiliser le long obsolète et notoirement gênant SimpleDateDeformat classe. Au moins pas comme la première option. Et non sans aucune réservation. Aujourd'hui, nous avons tellement mieux dans java.time , le Java moderne API DATE ET TEMPS API, et son DateTimeformatter .



3
votes

Vous pouvez ajouter des littéraux de chaîne à un format de date en les entourant avec des guillemets simples ( '): xxx


3 commentaires

S'il vous plaît, n'enseigne pas les jeunes à utiliser le long obsolète et notoirement gênant SimpleDateDeformat classe. Au moins pas comme la première option. Et non sans aucune réservation. Aujourd'hui, nous avons tellement mieux dans java.time , le Java moderne API DATE ET TEMPS API, et son DateTimeformatter .


@ Olev.v. sur Android, il est toujours difficile d'utiliser java.time , lorsque la version min de Android 8 est requise


@Vlad La question n'était pas sur Android. Pour Android plus anciens, vous pouvez utiliser Java.time soit via Desseukaring ou à travers Threetenabp . Néanmoins, si la réponse a dit Voici une réponse pour Android androïde , il serait plus utile et un risque plus faible de mener quelqu'un d'autre égaré.



3
votes

Enveloppez simplement le mot en guillemets simples.

"dd MMM yyyy 'at' hh:mm aaa"


0 commentaires

3
votes

Si vous utilisez Java .Time pour cela, vous pouvez définir un java.time.format.dateTimeformatter pour analyser une chaîne , utilisez-le pour analyser le Chaîne à un java.time.localdateTime et utilisez un autre DateTimeformatter qui inclut le à l'échappant dans le motif par En le fermant en guillemets simples: xxx

Ce code produit la sortie xxx


7 commentaires

Peu importe que vous utilisiez l'API de Time plus récente ou l'API de la vieille date pour cela. La question concerne le à dans la chaîne de date formatée et la solution d'utilisation d'une seule cote 'at' est la même pour les deux. Obscurcir la partie pertinente de la réponse en prêchant la nouvelle API est contre-productive. Je ne vote pas, car rien ici ne va pas, mais je ne fais pas vote non plus, à cause de la prédication inutile qui est immatérielle à la question.


@Andreas OK, j'ai reformé le début un peu pour la faire moins prêcher . J'ai toujours envie de dire des ops qui utilisent java.text.simpledateformat sur java.time n'est pas totalement inutile. J'admets, ils en savent peut-être et utiliser l'API obsolète pour des raisons, mais dans de nombreux cas, ils ne savent tout simplement pas java.time .


Où dans la question Voyez-vous une mention de SimpleDateDeformat ? Vous commencez à prêcher, mais la question s'applique également aux API. Comment savez-vous que OP n'utilise pas déjà l'API TIME? Veuillez contrôler votre zéalisosité lorsqu'elle est entièrement injustifiée.


@Andreas Je ne le sais pas, il n'est pas non plus mentionné, ni marqué. Je viens de voir des réponses fournies avec SimpleDateFormat , trouvé aucun commentaire indiquant ... mais j'utilise java.time et cela m'a fait prêche une solution dans java.time .


Vous n'avez trouvé aucun commentaire de OP car OP est probablement hors ligne et n'a pas vu aucune des réponses à l'aide de SimpleDateFormat . Vous conclusion de l'air mince. A ce moment-là, il n'y a qu'un seul commentaire de l'OP n'importe où , qui a été laissé 3 minutes après la publication de la question et la réponse avec le commentaire n'a pas mentionné SimpleDateFormat < Je> à l'époque (voir l'historique de réponses).


@Andreas J'espère trouver une réponse lorsque OP devient à nouveau en ligne et peut peut-être publier un commentaire, modifie la question ou accepte l'une des réponses. Peut-être prendre un certain temps, ne pourrait jamais arriver, mais je verrai. Pourrait être une mauvaise conclusion, mais ce n'est pas sûr jusqu'à présent.


Cela n'a pas vraiment d'importance, car la réponse de la cote unique que le mot au mot s'applique également aux API, rendant Cette réponse le meilleur de tous. Court et au point, avec un code supplémentaire inutile obscurcissant la partie pertinente. Soutenir les réponses concises claires et le vote à l'avance. J'en ai sûr.