Java datoformat

Java datoformat
Datoverdi må formatere for forskjellige programmeringsformål. En av de viktige grunnene til å formatere datoen er å representere datoverdien i et menneskelig lesbart format. Det finnes mange klasser i Java for å formatere datoverdien. DateTimeFormatter og SimpleDateFormat er to av dem. Disse klassene kan brukes til å formatere datoverdier på forskjellige måter. Hvordan disse to klassene kan brukes til å formatere datoen i Java blir forklart i denne opplæringen.

DateTimeFormatter:

Det introduseres i Java 8 for å formatere datoverdi. Det brukes til å formatere Zonedatetime, LocalDateTime, LocalDate, og Lokal tid. DateTimeFormatter -objektet kan opprettes ved å bruke et innebygd mønster, tilpasset mønster og lokal stil. Noen bruksområder av denne klassen vises i denne opplæringen med flere eksempler.

SimpleDateFormat:

Det brukes til å formatere og analysere datoverdier med lokal støtte. Datoen til streng og streng til dags konvertering kan gjøres enkelt ved å bruke denne klassen. Det er skapt ved å utvide DateFormat klasse. Noen bruksområder av denne klassen vises i denne opplæringen med flere eksempler.

Eksempel-1: Formatdato ved hjelp av DateTimeFormatter og innebygd mønster

Dato og klokkeslettformat for DateTimeFormatter er fast for det innebygde mønster. Dato- og tidsverdien vil bli skrevet ut basert på innebygd Mønster brukt i koden. ISO_DATE Mønster brukes i følgende kode som skriver ut datoen i formatet, yyyy-mm-dd. Gjeldende dato blir lest her ved å bruke metoden som heter nå() av LocalDate klasse som returnerer den formaterte datoverdien i strengen.

Importer Java.tid.format.DateTimeFormatter;
Importer Java.tid.LocalDate;
public class date2
public static void main (String [] args)
// Opprett DateTimeFormatter -objekt
DateTimeFormatter Format_Object = DateTimeFormatter.ISO_DATE;
// Lag strengobjekt for å lese den lokale datoen
String dateObject = format_objekt.Format (LocalDate.nå());
// Skriv ut gjeldende dato
System.ute.Println ("I dag er" + dateObject);

Produksjon:

Følgende bilde viser utdataene fra ovennevnte kode. Utgangen vil avhenge av gjeldende systemdato.

Eksempel-2: Formatdato ved hjelp av DateTimeFormatter og tilpasset mønster

Du kan skrive ut datoverdien i et mer menneskelig lesbart format ved å bruke det tilpassede mønsteret til DateTimeFormatter. Mønsteret som brukes i følgende eksempel vil skrive ut den nåværende ukedagen med datoverdien. OfPattern () Metode brukes her for å angi mønsteret på datoverdien. I mønsteret, 'Eeee ' brukes til å skrive ut ukedagen i full form, 'dd ' brukes til å skrive ut dagen, 'Mmmm'brukes til å skrive ut månedens navn i full form og 'Åååå' brukes til å skrive ut fire sifre året. De nå() Metode av LocalDateTime brukes her til å lese gjeldende systemdato og klokkeslett. De format() Metoden brukes til å returnere den formaterte datoverdien i streng basert på mønsteret.

Importer Java.tid.format.DateTimeFormatter;
Importer Java.tid.LocalDateTime;
offentlig klasse Dato1
public static void main (String [] args)
// Opprett formaterobjekt ved bruk av OfPattern ()
DateTimeFormatter Format_Object = DateTimeFormatter.OFPATTERN ("EEEE, DD MMMM YYYY.");
// Opprett et lokalt dato-tidsobjekt
LocalDateTime DateTimeObj = localDateTime.nå();
// få formatert streng
String StringDate = Format_Object.Format (DateTimeObj);
// Skriv ut den formaterte datoen
System.ute.Println ("I dag er" + Stringdate);

Produksjon:

Følgende bilde viser utdataene fra ovennevnte kode. Utgangen vil avhenge av gjeldende systemdato.

Eksempel-3: Formatdato ved bruk av SimpleTimeFormat og Format () -metode

Følgende eksempel viser bruk av SimpletimeFormat for å skrive ut den formaterte datoen og tidsverdien basert på det brukte mønsteret. Her brukes “DD Mmmm Yyyy, EEEE, HH: MM A” som et mønster i koden. Betydningen av hver del av mønsteret uten 'HH' og 'MM' er forklart i forrige eksempel. 'hh ' brukes her til å skrive ut gjeldende timeverdi, og 'mm'brukes til å skrive ut gjeldende minuttverdi. Dato Klasse brukes i koden for å lese gjeldende systemdato og klokkeslett. De format() Metoden brukes til å returnere den formaterte dato- og tidsverdiene i streng basert på det brukte mønsteret.

Importer Java.tekst.SimpleDateFormat;
Importer Java.util.Dato;
public class date3
public static void main (String [] args)
// Angi mønsteret
String mønster = "dd mmmm yyyy, eeee, hh: mm a";
// Lag SimpleDateFormat -objekt
SimpleDateFormat SimpleDateFormat = new SimpleDateFormat (mønster);
// Konverter dato til strengverdien
String Dateval = SimpleDateFormat.Format (ny dato ());
// Del datoverdien basert på komma (,)
Streng [] i dag_arr = Dateval.dele(",");
// Skriv ut den formaterte utgangen
System.ute.println ("date -" + i dag_arr [0] + "\ nday -" + i dag_arr [1] +
"\ ntime -" + i dag_arr [2]);

Produksjon:

Følgende bilde viser utdataene fra ovennevnte kode. Utgangen vil avhenge av gjeldende systemdato og klokkeslett.

Eksempel-4: Formatdato ved bruk av SimpleTimeFormat og Parse () -metode

Følgende eksempel viser bruken av Parse () Metode for å lese gjeldende dato eller en bestemt dato som konverterer den formaterte strengverdien til en datoverdi. Her, The “DD/mm/åååå” mønster brukes til å angi den bestemte datoen for parse () metode. Gjeldende datoverdi blir lest av Dato klasse og returnerte verdien som en streng. Denne verdien blir igjen konvertert til datoverdi ved å bruke parse () metode. Deretter settes en bestemt datoverdi som en streng i parse -metoden () i henhold til mønsteret. Verdien konverteres til en dato som før.

Importer Java.tekst.SimpleDateFormat;
Importer Java.util.Dato;
public class date4
public static void main (String [] args)
// Angi mønsteret
String mønster = "dd/mm/åååå";
prøv
// Lag SimpleDateFormat -objekt
SimpleedateFormat format_object = new SimpleDateFormat (mønster);
// Konverter gjeldende dato til strengverdien
String Dateval = format_objekt.Format (ny dato ());
// Konverter strengen til dags dato
Dato Dato1 = Format_objekt.parse (Dateval);
// Skriv ut datoverdien
System.ute.println ("Gjeldende dato er"+ date1);
// Konverter den definerte datostrengen til dags dato
Dato Dato2 = Format_objekt.parse ("16/12/2020");
// Skriv ut datoverdien
System.ute.println ("Den definerte datoen er" + date2);

Fangst (Java.tekst.Parseexception e)
// Skriv ut feilmelding
System.feil.println (e.getMessage ());


Produksjon:

Følgende utdata vises etter å ha kjørt skriptet, og den første utgangen vil avhenge av gjeldende systemtid.

Konklusjon:

Ulike måter å formatere datoverdien vises i denne opplæringen ved å bruke forskjellige Java -klasser. Opplæringen fokuserer hovedsakelig på formatering av datoverdiene. Du kan formatere tidsverdien også av klassene som brukes her. Jeg håper, datoformateringsoppgave i Java vil være enklere etter å ha lest denne opplæringen.