Denne artikkelen vil introdusere deg for måter du kan konvertere streng til dato på og også gi deg en grundig praktisk demonstrasjon. Følgende tips vil bli dekket i denne artikkelen,
- Hvordan konvertere String til Date i Java?
- Tar datoen som en tekst>
- For å få datoen formatert i skjemaet “12/12/1988”
- For å endre tidssonen
Hvordan konvertere String til Date i Java?
Vi lærer her “Hvordan konvertere strengobjekter til datoobjekter” ved hjelp av enkle kodeendringer og teknikker. Den beste måten å konvertere er
String to Date
SimpleDateFormat.parse (streng)
Dato til streng
SimpleDateFormat.format (dato)
Analyse fungerer på forskjellige måter:
Fortsetter med denne artikkelen om Konverter streng til dato i Java,
Tar datoen som en tekst
Hvis du trenger måneden som en tekst med tre bokstaver, må vi definere 3 ‘M’ som blir tatt som månedsverdien. Da tolkes månedens verdi som tekst som okt, des, juni osv.
For å få resultatet: 12. desember 1998
Her er koden for å uttrykke strengverdien i datoformatet.
Pakke com.test.test import java.text.ParseException import java.text.SimpleDateFormat import java.util.Date public class TestDateExample1 {public static void main (String [] argv) {SimpleDateFormat formatter = new SimpleDateFormat ('dd-MMM- åååå ') String dateInString = '12 -Dec-1998' prøv {Date date = formatter.parse (dateInString) System.out.println (date) System.out.println (formatter.format (date))} catch (ParseException e ) {e.printStackTrace ()}}}
Produksjon:
Fredag 12. desember 00:00:00 MYT 1998
12. desember 1998
Fortsetter med denne artikkelen om Konverter streng til dato i Java,
For å få datoen formatert i skjemaet “12/12/1988”
pakke com.test.date import java.text.ParseException import java.text.SimpleDateFormat import java.util.Date public class TestDateExample2 {public static void main (String [] argv) {SimpleDateFormat formatter = new SimpleDateFormat ('dd / MM / åååå ') String dateInString = '12 / 12/1988' prøv {Date date = formatter.parse (dateInString) System.out.println (date) System.out.println (formatter.format (date))} catch (ParseException e ) {e.printStackTrace ()}}}
Java 8 bruker Date-Time API som gir parse () -metoder for å konvertere strengverdien til Date-Time-verdien. For grunnleggende parseringsregler har det vært definert standarder som representerer strengverdien for dato og klokkeslett i begge ISO_LOCAL_TIME eller ISO_LOCAL_DATE format. Vi setter formateringskoden i 'prøve' og 'fangst' -blokken som gir et unntak ved kjøretid hver gang den definerte regelen ikke blir oppfylt.
Enkelt analyseeksempel er:
LocalDateTime dateTime = LocalDateTime.parse ('2018-05-05T11: 50: 55')
Fortsetter med denne artikkelen om Konverter streng til dato i Java,
For å endre tidssonen
For å gjøre dette, må vi definere tidssoneparseringsmetodene kjent som “ZonedDateTime” for å direkte endre strengverdien til dato-tidsformat. Alt du trenger å gjøre er å definere tidssonen du vil ha dato for. For eksempel, her trenger vi vår dato og tid i den europeiske sonen. Så vi definerer tiemzone som Europa / Paris ved å bruke ‘ZonedDateTime’-metoden:
ZonedDateTime zonedDateTime = ZonedDateTime.parse ('2015-05-05T10: 15: 30 + 01: 00 [Europe / Paris]')
La oss ta det enkle API for dato og klokkeslett som konverterer strengverdien til datoverdien ved hjelp av SimpleDateFormat:
- Java introduserte en ny Dato tid API-anrop med versjon 8 for å representere dato-tidsparametrene kjent som “java.time”. Den gamle samtalen i alle tidligere versjoner for å representere datoen var java.util.date.
La oss se hvordan du faktisk konverterer en streng til en lokal datatype for dato og klokkeslett:
Analyser API-samtalen:
Hvis strengverdien vi trenger å konvertere til Dato tid typen er av ISO-801-format, så kan vi bare ringe DateFormat og SimpleDateFormat-klasser ved hjelp av parse () -metoder.
Et eksempel på det samme:
dato datatype i kvl
importer java.text.SimpleDateFormat importer java.util.Date offentlig klasse StringToDateExample1 {offentlig statisk ugyldig hoved (String [] args) kaster Unntak {String sDate1 = '31 / 12/1998 'Dato dato1 = ny SimpleDateFormat (' dd / MM / åååå '). parse (sDate1) System.out.println (sDate1 +' t '+ date1)}}
Produksjon:
31.12.1998 Torsdag 31. desember kl. 00:00:00 IS 1998
importer java.text.SimpleDateFormat importer java.util.Date offentlig klasse StringToDateExample2 {offentlig statisk ugyldig hoved (String [] args) kaster Unntak {String sDate1 = '12 / 10/1988 'String sDate2 = '12 -Oct-1988' String sDate3 = '12 10, 1988 'streng sDate4 =' ons 12. oktober 1988 'streng sDate5 =' ons 12. oktober 1988 23:37:50 'streng sDate6 = '31 -des-1998 23:37:50' SimpleDateFormat formatter1 = ny SimpleDateFormat ('dd / MM / åååå') SimpleDateFormat formatter2 = ny SimpleDateFormat ('dd-MMM-åååå') SimpleDateFormat formatter3 = ny SimpleDateFormat ('MM dd, åååå') SimpleDateFormat formatter4 = ny SimpleDateFatMat åååå ') SimpleDateFormat formatter5 = ny SimpleDateFormat (' E, MMM dd åååå HH: mm: ss ') SimpleDateFormat formatter6 = ny SimpleDateFormat (' dd-MMM-åååå HH: mm: ss ') Dato dato1 = formatter1.parse (sDate1) Dato date2 = formatter2.parse (sDate2) Date date3 = formatter3.parse (sDate3) Date date4 = formatter4.parse (sDate4) Date date5 = formatter5.parse (sDate5) Date date6 = formatter6.parse (sDate6) System.out.println (sDat e1 + 't' + dato1) System.out.println (sDate2 + 't' + date2) System.out.println (sDate3 + 't' + date3) System.out.println (sDate4 + 't' + date4) System.out. println (sDate5 + 't' + date5) System.out.println (sDate6 + 't' + date6)}}
Ved å bruke koden ovenfor får du faktisk resultatene i alle de nevnte formatene. Så vi definerte de forskjellige datoformatene i en strengverdi, og deretter analyserte vi dem ved å definere SimpleDateFormat-klassen. Når det er gjort, genereres utdataene i alle de nevnte datoformatene.
31.12.1998 Torsdag 31. desember kl. 00:00:00 IS 1998
31. desember 1998 Torsdag 31. desember kl. 00:00:00 IS 1998
12 31. 1998 Torsdag 31. desember kl. 00:00:00 IS 1998
Torsdag 31. desember 1998 Torsdag 31. desember kl. 00:00:00 IS 1998
Tor 31. des 1998 23:37:50 Tor 31. des 23:37:50 IS 1998
31. desember 1998 23:37:50 Tor 31. des 23:37:50 IS 1998
Les dokumentet for å vite mer om datoformatet javadoc . Noen av de gyldige String to Date-formatene er nevnt her:
y = år (åå eller åååå)
M = måned (MM)
d = dag i måned (dd)
h = time (0-12) (hh)
H = time (0-23) (HH)
m = minutt i time (mm)
s = sekunder (ss)
S = millisekunder (SSS)
z = tidssonetekst (f.eks. Pacific Standard Time ...)
Z = tidssone, tidsforskyvning (f.eks. -0800)
Merk: Å definere ‘Java.util.date’ som dato dato = ny dato () er avviklet. Så bruk alltid SimpleDateFormat med en matchende inngangsstreng som du trenger å konvertere.
java forskjell mellom redskaper og utvidelser
Dermed har vi kommet til en slutt på denne artikkelen om ‘Hvordan konvertere streng til dato i Java?’. Hvis du ønsker å lære mer,sjekk ut av Edureka, et pålitelig online læringsfirma. Edurekas Java J2EE- og SOA-opplærings- og sertifiseringskurs er designet for å trene deg for både kjerne- og avanserte Java-konsepter sammen med forskjellige Java-rammer som Hibernate & Spring.
Har du et spørsmål til oss? Vennligst nevn det i kommentarfeltet i denne artikkelen, og vi vil kontakte deg så snart som mulig.