Programación

1º DAM/DAW - Curso 2023-2024

User Tools

Site Tools


apuntes:fechas

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
Last revisionBoth sides next revision
apuntes:fechas [2019/02/16 11:29] Santiago Faciapuntes:fechas [2023/06/04 20:17] – [Conversiones de fechas (Date <-> LocalDate)] Santiago Faci
Line 99: Line 99:
 System.out.println(fechaHoy.plus(Period.ofDays(35)));   // 2018-12-29 System.out.println(fechaHoy.plus(Period.ofDays(35)));   // 2018-12-29
 </code> </code>
 +
 +=== Formatear una fecha ===
  
 También se puede formatear el valor de la fecha para que pueda ser representado como una cadena de texto y viceversa: También se puede formatear el valor de la fecha para que pueda ser representado como una cadena de texto y viceversa:
Line 105: Line 107:
 // Pasa la fecha a una representación en String // Pasa la fecha a una representación en String
 String cadenaFecha = fechaHoy.format(DateTimeFormatter.ofPattern("dd/MM/yyyy")); String cadenaFecha = fechaHoy.format(DateTimeFormatter.ofPattern("dd/MM/yyyy"));
 +
 +=== Parsear una fecha ===
  
 // Pasa la representación en String a un valor de fecha // Pasa la representación en String a un valor de fecha
Line 112: Line 116:
 Se pueden ver más ejemplos de formatos de fecha y patrones en la API de Java correspondiente a  Se pueden ver más ejemplos de formatos de fecha y patrones en la API de Java correspondiente a 
 la [[https://docs.oracle.com/javase/8/docs/api/java/time/format/DateTimeFormatter.html|clase DateTimeFormatter]] la [[https://docs.oracle.com/javase/8/docs/api/java/time/format/DateTimeFormatter.html|clase DateTimeFormatter]]
 +
 +=== Comparar dos fechas ===
  
 También es posible comparar dos fechas entre ellas directamente para saber cuál es anterior/posterior o si son iguales También es posible comparar dos fechas entre ellas directamente para saber cuál es anterior/posterior o si son iguales
Line 136: Line 142:
 // Puedo verla en dias, meses, . . . // Puedo verla en dias, meses, . . .
 System.out.println(periodo.getDays());      // -1 System.out.println(periodo.getDays());      // -1
 +</code>
 +
 +==== Conversiones de fechas (Date <-> LocalDate) ====
 +
 +=== De Date a LocalDate ===
 +
 +<code java>
 +fechaDate.toInstant().atZone(ZoneId.systemDefault()).toLocalDate()
 +</code>
 +
 +=== De Date a LocalDateTime ===
 +
 +<code java>
 +Instant.ofEpochMilli(fechaDate.getTime()) 
 +  .atZone(ZoneId.systemDefault())
 +  .toLocalDateTime();
 +</code>
 +
 +=== De LocalDate a Date ===
 +
 +<code java>
 +java.util.Date.from(fechaLocalDate.atStartOfDay()
 +  .atZone(ZoneId.systemDefault())
 +  .toInstant();
 +</code>
 +
 +=== De LocalDate a Date ===
 +
 +<code java>
 +java.util.Date.from(fechaLocalDate.atZone(ZoneId.systemDefault()) 
 +  .toInstant();
 </code> </code>
  
 ---- ----
  
-(c) 2019 Santiago Faci+(c) 2019-{{date>%Y}} Santiago Faci
apuntes/fechas.txt · Last modified: 2023/06/04 21:18 by Santiago Faci