¿Cómo formulo una marca de tiempo java.sql a mi gusto? (En una cadena, a efectos de visualización)¿Cómo formatear una marca de tiempo java.sql para mostrar?
Respuesta
java.sql.Timestamp
extiende java.util.Date
. Quiso decir algo como:
String S = new SimpleDateFormat("MM/dd/yyyy").format(myTimestamp);
Incluir tiempo:
String S = new SimpleDateFormat("MM/dd/yyyy HH:mm:ss").format(myTimestamp);
Si estás usando MySQL y desea que la propia base de datos para realizar la conversión, utilice esto:
Si prefiere formatear utilizando Java, el uso esto:
SimpleDateFormat dateFormat = new SimpleDateFormat("M/dd/yyyy");
dateFormat.format(new Date());
Utilice un DateFormat
. En una aplicación internacionalizada, use el formato proporcionado por getInstance
. Si desea controlar explícitamente el formato, cree usted mismo un nuevo SimpleDateFormat
.
Para esta pregunta en particular, la propuesta de norma java.text.SimpleDateFormat
obras, pero tiene el efecto secundario desafortunado que SimpleDateFormat
is not thread-safe y pueden ser el origen de problemas particularmente desagradables, ya que va corromper su producción en escenarios multi-hilo, y ¡no tendrás excepciones!
Deseo fuertemente recomiendo mirar Joda para algo como esto. Por qué ? Se trata de una biblioteca de fecha/hora mucho más rica e intuitiva para Java que la biblioteca actual (y la base de la nueva y prometedora biblioteca de fecha/hora estándar de Java, por lo que aprenderá pronto a ser estándar API).
Buena advertencia.Pero es muy fácil de abordar: no comparta las instancias de SimpleDateFormat almacenándolas en el ámbito de sesión/variables de instancia/contexto estático y luego accediendo a ellas desde múltiples hilos. Simplemente cree un nuevo SimpleDateFormat() dentro de su método y deséchelo después de su uso. Eso es threadsafe –
Por supuesto, si realmente desea almacenar/compartir la instancia SimpleDateFormat, sincronice access: synchronized (simpleDateFormatInstance) {s = simpleFeatInstance.format (myTimeStamp)} O cree una extensión personalizada de la clase SDF, y hágalo automáticamente en el método de formato. –
Uso String.Format (o java.util.Formatter):
Timestamp timestamp = ...
String.format("%1$TD %1$TT", timestamp)
EDIT:
consulte la documentación del formateador saber qué significa DT y TT: haga clic en java.util.Formatter
La primera ' T 'significa:
't', 'T' date/time Prefix for date and time conversion characters.
y el personaje siguiente al 'T':
'T' Time formatted for the 24-hour clock as "%tH:%tM:%tS".
'D' Date formatted as "%tm/%td/%ty".
Esta es la mejor respuesta, según yo. No se crea ningún objeto superfluo solo para convertir la marca de tiempo en una cadena. – Salil
¿Qué es TD y TT en este código? –
Ahora debe quedar claro dónde encontrar la documentación y qué significa –
cadena timeFrSSHStr = timeFrSSH.toString();
¿Qué es 'timeFrSSH'? –
- 1. ¿Cómo formatear una marca de tiempo Unix en Delphi?
- 2. Cómo convertir una marca de tiempo de Unix en una marca de tiempo ISO8601 en PHP?
- 3. ¿Cómo puedo formatear una marca de tiempo en JavaScript para mostrarla en gráficos? UTC está bien
- 4. Mostrar la marca de tiempo de compilación en una aplicación
- 5. Usando strftime en C, ¿cómo puedo formatear la hora exactamente como una marca de tiempo Unix?
- 6. ¿Cómo formatear una columna DBGrid para mostrar dos lugares decimales?
- 7. ¿Cómo puedo mostrar una fecha formateada de una marca de tiempo de Unix en ramitas?
- 8. ¿Cuál es la forma más sencilla de formatear una marca de tiempo de SQL en PHP?
- 9. UNIX Marca de tiempo para MySQL DATETIME
- 10. ¿Cuál es la fórmula para calcular una marca de tiempo?
- 11. jQuery Hace tiempo de una marca de tiempo?
- 12. Eliminar parte del tiempo de una marca de tiempo
- 13. Agregando días a una marca de tiempo
- 14. de expresiones regulares para validar una marca de tiempo
- 15. jQuery Datepicker - ¿Cómo puedo formatear la fecha como una marca de tiempo epoch (en segundos NO milisegundos)
- 16. ¿Cómo eliminar milisegundos de una marca de tiempo?
- 17. marca de tiempo SSMA. ¿Para qué sirve? ¿Cómo se usa?
- 18. ¿Cómo insertar una marca de tiempo en Oracle?
- 19. ¿Cómo asegurar que una marca de tiempo sea siempre única?
- 20. ¿Cómo agregar una marca de tiempo a TFSBuild.proj?
- 21. Visual Studio 2008 Debug ¿Ventana para mostrar la marca de tiempo?
- 22. ¿Existe una manera simple de convertir una marca de tiempo ISO8601 en un formato NSDate?
- 23. ¿Cómo grafico solo la porción de tiempo de una marca de tiempo incluyendo una fecha?
- 24. Cómo actualizo automáticamente una marca de tiempo en PostgreSQL
- 25. ¿Cómo creo una marca de tiempo Unix en Android?
- 26. Lote: Marca de tiempo a UNIX Tiempo
- 27. Convertir marca de tiempo en zonas horarias
- 28. Mostrar símbolo de marca en la etiqueta
- 29. Reordenando una marca de tiempo con una regex Perl
- 30. Creación de una marca de tiempo única en Java
Eso funcionará, pero ten cuidado ya que SimpleDateFormat no es seguro para subprocesos. –
Solo un pequeño recordatorio de que si el objeto SimpleDateFormat es un objeto de ámbito local (se crea y usa solo dentro de un método), entonces es seguro para subprocesos, ya que la pila en la que residirá es intrínsecamente "seguro para subprocesos" (como pertenece a un solo hilo). – quantum
Para incluir el tiempo, necesitará utilizar SimpleDateFormat ("MM/dd/aaaa hh: mm") o algo similar – AverageMarcus