Java

Java datumformat

Java datumformat
Datumvärdet måste formateras för olika programmeringsändamål. En av de viktigaste anledningarna till att formatera datumet är att representera datumvärdet i ett läsbart format. Många klasser finns i Java för att formatera datumvärdet. DateTimeFormatter och SimpleDateFormat är två av dem. Dessa klasser kan användas för att formatera datumvärden på olika sätt. Hur dessa två klasser kan användas för att formatera datumet i Java förklaras i denna handledning.

DateTimeFormatter:

Det introduceras i Java 8 för att formatera datumvärde. Den används för att formatera ZoneDateTime, LocalDateTime, LocalDate, och Lokal tid. DateTimeFormatter-objektet kan skapas med hjälp av ett inbyggt mönster, anpassat mönster och lokaliserad stil. Vissa användningar av denna klass visas i denna handledning med flera exempel.

SimpleDateFormat:

Den används för att formatera och analysera datumvärden med lokalt stöd. Datum till sträng och sträng till datum konvertering kan göras enkelt med den här klassen. Det skapas genom att utvidga Datumformat klass. Vissa användningar av denna klass visas i denna handledning med flera exempel.

Exempel 1: Formatera datum med DateTimeFormatter och inbyggt mönster

Datum- och tidsformatet för DateTimeFormatter är fast för den inbyggda mönster. Datumet och tidsvärdet kommer att skrivas ut baserat på inbyggd mönster som används i koden. ISO_DATE mönster används i följande kod som skriver ut datumet i formatet, åååå-mm-dd. Det aktuella datumet läsas här genom att använda metoden nu() av LocalDate klass som returnerar det formaterade datumvärdet i strängen.

importera java.tid.formatera.DateTimeFormatter;
importera java.tid.LocalDate;
public class date2
public static void main (String [] args)
// Skapa DateTimeFormatter-objekt
DateTimeFormatter format_object = DateTimeFormatter.ISO_DATE;
// Skapa strängobjekt för att läsa det lokala datumet
String DateObject = format_object.format (LocalDate.nu());
// Skriv ut aktuellt datum
Systemet.ut.println ("Idag är" + DateObject);

Produktion:

Följande bild visar utdata från ovanstående kod. Utgången beror på det aktuella systemdatumet.

Exempel 2: Formatera datum med DateTimeFormatter och anpassat mönster

Du kan skriva ut datumvärdet i ett mer läsbart format med hjälp av det anpassade mönstret för DateTimeFormatter. Mönstret som används i följande exempel skriver ut den aktuella veckodagen med datumvärdet. ofPattern () Metoden används här för att ställa in mönstret för datumvärdet. I mönstret, 'EEEE ' används för att skriva ut veckodagen i fullformat, 'dd ' används för att skriva ut dagen, 'MMMM'används för att skriva ut månadens namn i full form och "åååå" används för att skriva ut de fyra siffrorna år. De nu() metod av LocalDateTime används här för att läsa aktuellt systemdatum och -tid. De formatera() metoden används för att returnera det formaterade datumvärdet i sträng baserat på mönstret.

importera java.tid.formatera.DateTimeFormatter;
importera java.tid.LocalDateTime;
public class date1
public static void main (String [] args)
// Skapa formateringsobjekt med ofPattern ()
DateTimeFormatter format_object = DateTimeFormatter.ofPattern ("EEEE, dd MMMM åååå.");
// Skapa ett lokalt objekt för datum-tid
LocalDateTime dateTimeObj = LocalDateTime.nu();
// Få formaterad sträng
String stringDate = format_object.format (dateTimeObj);
// Skriv ut det formaterade datumet
Systemet.ut.println ("Idag är" + stringDate);

Produktion:

Följande bild visar utdata från ovanstående kod. Utgången beror på det aktuella systemdatumet.

Exempel 3: Formatera datum med SimpleTimeFormat och format () -metoden

Följande exempel visar användningen av SimpleTimeFormat för att skriva ut det formaterade datum- och tidsvärdet baserat på det använda mönstret. Här används “dd MMMM åååå, EEEE, hh: mm a” som ett mönster i koden. Betydelsen av varje del av mönstret utan 'hh' och 'mm' förklaras i föregående exempel. ''hh ' används här för att skriva ut det aktuella timvärdet, och 'mm'används för att skriva ut det aktuella minutvärdet. Datum klass används i koden för att läsa aktuellt systemdatum och -tid. De formatera() metoden används för att returnera de formaterade datum- och tidsvärdena i sträng baserat på det använda mönstret.

importera java.text.SimpleDateFormat;
importera java.util.Datum;
public class date3
public static void main (String [] args)
// Ställ in mönstret
Strängmönster = "dd MMMM åååå, EEEE, hh: mm a";
// Skapa SimpleDateFormat-objekt
SimpleDateFormat simpleDateFormat = ny SimpleDateFormat (mönster);
// Konvertera datum till strängvärdet
String dateVal = simpleDateFormat.format (nytt datum ());
// Dela datumvärdet baserat på komma (,)
Sträng [] today_arr = dateVal.dela(",");
// Skriv ut den formaterade utgången
Systemet.ut.println ("Datum -" + idag_arr [0] + "\ nDag -" + idag_arr [1] +
"\ nTid -" + idag_arr [2]);

Produktion:

Följande bild visar utdata från ovanstående kod. Utdata beror på aktuellt systemdatum och tid.

Exempel 4: Formatera datum med SimpleTimeFormat och metoden parse ()

Följande exempel visar användningen av analysen () metod för att läsa det aktuella datumet eller ett visst datum som konverterar det formaterade strängvärdet till ett datumvärde. Här, den “Dd / MM / åååå” mönster används för att ställa in det specifika datumet för analysera () metod. Det aktuella datumvärdet läses av Datum klass och returnerade värdet som en sträng. Detta värde omvandlas igen till datumvärde med hjälp av analysera () metod. Därefter ställs ett visst datumvärde in som en sträng i metoden parse () enligt mönstret. Värdet omvandlas till ett datum som tidigare.

importera java.text.SimpleDateFormat;
importera java.util.Datum;
public class date4
public static void main (String [] args)
// Ställ in mönstret
Strängmönster = "dd / MM / åååå";
Prova
// Skapa SimpleDateFormat-objekt
SimpleDateFormat format_object = nytt SimpleDateFormat (mönster);
// Konvertera det aktuella datumet till strängvärdet
String dateVal = format_object.format (nytt datum ());
// Konvertera strängen till datumvärde
Datum datum1 = format_object.parse (dateVal);
// Skriv ut datumvärdet
Systemet.ut.println ("Det aktuella datumet är" + datum1);
// Konvertera den definierade datumsträngen till datumvärdet
Datum datum2 = format_object.analysera ("16/12/2020");
// Skriv ut datumvärdet
Systemet.ut.println ("Det definierade datumet är" + datum2);

fånga (java.text.ParseException e)
// Skriv ut felmeddelande
Systemet.fela.println (e.getMessage ());


Produktion:

Följande utdata visas efter att manuset har körts, och den första utdata beror på den aktuella systemtiden.

Slutsats:

Olika sätt att formatera datumvärde visas i denna handledning med hjälp av olika Java-klasser. Självstudien fokuserar främst på formateringen av datumvärdena. Du kan också formatera tidsvärdet efter de klasser som används här. Jag hoppas att datumformateringsuppgiften i Java blir enklare efter att ha läst denna handledning.

Installera det senaste OpenRA-strategispelet på Ubuntu Linux
OpenRA är en Libre / Free Real Time Strategy-spelmotor som återskapar de tidiga Westwood-spelen som det klassiska Command & Conquer: Red Alert. Distri...
Installera senaste Dolphin Emulator för Gamecube & Wii på Linux
Dolphin Emulator låter dig spela dina valda Gamecube & Wii-spel på Linux Personal Computers (PC). Eftersom Dolphin Emulator är en fritt tillgänglig o...
Hur man använder GameConqueror Cheat Engine i Linux
Artikeln täcker en guide om hur du använder GameConqueror-fuskmotorn i Linux. Många användare som spelar spel på Windows använder ofta applikationen "...