Java:
Omvandla ett datum till en sträng
How to:
Vi använder java.time.format.DateTimeFormatter
och java.time.LocalDate
i Java för datumkonvertering.
import java.time.LocalDate;
import java.time.format.DateTimeFormatter;
import java.time.format.FormatStyle;
public class DatumTillStrang {
public static void main(String[] args) {
LocalDate datum = LocalDate.now();
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd");
String formatDatum = datum.format(formatter);
System.out.println(formatDatum); // Exempelutskrift: 2023-04-05
}
}
Deep Dive
Före Java 8 användes SimpleDateFormat
för att konvertera datum, men det var inte trådsäkert och ledde till problem. Java 8 introducerade java.time
-paketet, vilket inkluderade DateTimeFormatter
, med både trådsäkerhet och immutabilitet.
Alternativt kan du använda FormatStyle
för att få en lokaliserad datumsträng. Det ser ut så här:
DateTimeFormatter localizedFormatter = DateTimeFormatter.ofLocalizedDate(FormatStyle.SHORT);
String localizedDatum = datum.format(localizedFormatter);
System.out.println(localizedDatum); // Exempelutskrift: 2023-04-05
Denna kod kommer att utforma datumet baserat på systemets lokaliseringsinställningar.
När det kommer till implementation, är ett viktigt övervägande i valet av mönster att tänka på användarens lokala format. DateTimeFormatter
kan hantera en mängd olika internationella standarder och anpassade mönster.