Comment formater un horodatage java.sql à mon goût? (en une chaîne, à des fins d'affichage)
103
Comment formater un horodatage java.sql à mon goût? (en une chaîne, à des fins d'affichage)
java.sql.Timestamp
s'étend java.util.Date
. Tu peux faire:
String s = new SimpleDateFormat("MM/dd/yyyy").format(myTimestamp);
Ou pour inclure également le temps:
String s = new SimpleDateFormat("MM/dd/yyyy HH:mm:ss").format(myTimestamp);
Utilisez String.format (ou java.util.Formatter ):
EDIT:
veuillez consulter la documentation de Formatter pour savoir ce que signifie TD et TT: cliquez sur java.util.Formatter
Le premier 'T' signifie:
et le caractère suivant ce «T»:
la source
05/30/17 00:39:18
.Pour cette question particulière, la suggestion standard de
java.text.SimpleDateFormat
fonctionne, mais a un effet secondaire malheureux quiSimpleDateFormat
n'est pas thread-safe et peut être la source de problèmes particulièrement désagréables car elle corrompra votre sortie dans des scénarios multithreads, et vous ne le ferez pas. obtenez des exceptions!Je recommanderais fortement de regarder Joda pour quelque chose comme ça. Pourquoi ? C'est une bibliothèque d'heure / date beaucoup plus riche et plus intuitive pour Java que la bibliothèque actuelle (et la base de la nouvelle bibliothèque de date / heure standard Java, vous apprendrez donc bientôt un standard. API).
la source
Si vous utilisez MySQL et que vous souhaitez que la base de données elle-même effectue la conversion, utilisez ceci:
DATE_FORMAT (date, format)
Si vous préférez formater à l'aide de Java, utilisez ceci:
java.text.SimpleDateFormat
la source
Utilisez un
DateFormat
. Dans une application internationalisée, utilisez le format fourni pargetInstance
. Si vous souhaitez contrôler explicitement le format, créezSimpleDateFormat
vous-même un nouveau .la source
Chaîne timeFrSSHStr = timeFrSSH.toString ();
la source