Hur konverterar man strängar till datum i Java?



Den här artikeln kommer att presentera dig för hur du kan konvertera sträng till datum i Java och också ge dig en grundlig praktisk demonstration.

Den här artikeln presenterar hur du kan konvertera sträng till datum i och ge dig också en grundlig praktisk demonstration. Följande tips kommer att behandlas i den här artikeln,

Så låt oss komma igång,





Hur konverterar jag sträng till datum i Java?

Vi lär oss här ”Hur konverterar man strängobjekt till datumobjekt” med enkla kodändringar och tekniker. Det bästa sättet att konvertera är
String to Date



SimpleDateFormat.parse (String)

Datum till sträng

SimpleDateFormat.format (Datum)


Parsing fungerar på olika sätt:

Gå vidare med den här artikeln om Konvertera sträng till datum i Java,



Tar datumet som en text

Om du behöver månaden som en text i tre bokstäver, måste vi definiera 3 'M' som tas som månadsvärdet. Då tolkas månadens värde som text som okt, dec, juni etc.

funktion överbelastning i c ++ exempel

För att få resultatet: 12 december 1998

Här är koden för att uttrycka strängvärdet i datumformatet.

Paketet com.test.test importerar java.text.ParseException importerar java.text.SimpleDateFormat importerar java.util.Date public class TestDateExample1 {public static void main (String [] argv) {SimpleDateFormat formatter = new SimpleDateFormat ('dd-MMM- åååå ') String dateInString = '12 -Dec-1998' försök {Date date = formatter.parse (dateInString) System.out.println (date) System.out.println (formatter.format (date))} catch (ParseException e ) {e.printStackTrace ()}}}

Produktion:
Fri Dec 12 00:00:00 MYT 1998
12 dec 1998

Gå vidare med den här artikeln om Konvertera sträng till datum i Java,

För att få datumet formaterat i formuläret “12/12/1988”

paketet com.test.date importerar java.text.ParseException importerar java.text.SimpleDateFormat importerar java.util.Date public class TestDateExample2 {public static void main (String [] argv) {SimpleDateFormat formatter = new SimpleDateFormat ('dd / MM / åååå ') String dateInString = '12 / 12/1988' try {Date date = formatter.parse (dateInString) System.out.println (date) System.out.println (formatter.format (date))} catch (ParseException e ) {e.printStackTrace ()}}}

Java 8 använder Date-Time API som ger parse () -metoder för att konvertera strängvärdet till Date-Time-värdet. För grundläggande analysregler har standarder definierats för att representera strängvärdet för datum och tid i någon av dessa ISO_LOCAL_TIME eller ISO_LOCAL_DATE formatera. Vi lägger formateringskoden i 'try' och 'catch' -blocket som ger ett undantag vid körning varje gång den definierade regeln inte uppfylls.
Enkelt tolkningsexempel är:

LocalDateTime dateTime = LocalDateTime.parse ('2018-05-05T11: 50: 55')

Gå vidare med den här artikeln om Konvertera sträng till datum i Java,

För att ändra tidszon

För att göra det måste vi definiera tidszoneringsmetoder som kallas 'ZonedDateTime' för att direkt ändra strängvärdet till datum-tidsformat. Allt du behöver göra är att definiera den tidszon där du vill ha din datum-tid. Här behöver vi till exempel vårt datum och tid i den europeiska zonen. Så vi definierar tiemzonen som Europa / Paris genom att använda 'ZonedDateTime'-metoden:

ZonedDateTime zonedDateTime = ZonedDateTime.parse ('2015-05-05T10: 15: 30 + 01: 00 [Europe / Paris]')

Nu ska vi ta det enkla API för datumtid som konverterar strängvärdet till datumvärdet med SimpleDateFormat:

  1. Java introducerade en ny Datum Tid API-samtal med version 8 för att representera datumtidsparametrar som kallas “java.time”. Det gamla samtalet i alla tidigare versioner för att representera datumet var java.util.date.

Låt oss se hur man faktiskt konverterar en sträng till en lokal datatyp för datum och tid:

Analysera API-samtalet:

Om strängvärdet som vi behöver konvertera till Datum Tid typ är av ISO-801-format då kan vi helt enkelt ringa DateFormat och SimpleDateFormat klasser med hjälp av parse () metoder.

Ett exempel på samma:

importera java.text.SimpleDateFormat importera java.util.Date public class StringToDateExample1 {public static void main (String [] args) throw Exception {String sDate1 = '31 / 12/1998 'Date date1 = new SimpleDateFormat (' dd / MM / yyyy '). analysera (sDate1) System.out.println (sDate1 +' t '+ datum1)}}

Produktion:
12/31/1998 Tor 31 dec 00:00:00 IS 1998

importera java.text.SimpleDateFormat importera java.util.Date public class StringToDateExample2 {public static void main (String [] args) throw Exception {String sDate1 = '12 / 10/1988 'String sDate2 = '12 -Oct-1988' String sDate3 = '12 10, 1988 'Sträng sDate4 =' Ons 12 oktober 1988 'Sträng sDate5 =' Ons 12 oktober 1988 23:37:50 'Sträng sDate6 = '31 -Dec-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 SimpleDateFat, MM åååå ') SimpleDateFormat formatter5 = ny SimpleDateFormat (' E, MMM dd åååå HH: mm: ss ') SimpleDateFormat formatter6 = ny SimpleDateFormat (' dd-MMM-åååå HH: mm: ss ') Datum datum1 = formatter1.parse (sDate1) Date 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' + datum1) 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)}}

Genom att använda ovanstående kod får du faktiskt resultaten i alla nämnda format. Så vi definierade de olika datumformaten i ett strängvärde och sedan analyserade vi dem genom att definiera klassen SimpleDateFormat. När det är gjort genereras utdata i alla nämnda datumformat.

12/31/1998 Tor 31 dec 00:00:00 IS 1998

31 december 1998 Tor 31 dec 00:00:00 IS 1998

12 31, 1998 Tor 31 dec 00:00:00 IS 1998

bästa java ide för nybörjare

Tor 31 dec 1998 Tor 31 dec 00:00:00 IS 1998

Tor 31 dec 1998 23:37:50 Tor Dec 31 23:37:50 IS 1998

31 december 1998 23:37:50 Tor Dec 31 23:37:50 IS 1998

Läs dokumentet om du vill veta mer om datumformatet javadoc . Några av giltiga String to Date-format nämns här:
y = år (åå eller åååå)

M = månad (MM)

ställa in klassbana i Java

d = dag i månad (dd)

h = timme (0-12) (hh)

H = timme (0-23) (HH)

m = minut i timme (mm)

s = sekunder (ss)

S = millisekunder (SSS)

z = tidszonstext (t.ex. Pacific Standard Time ...)

Z = tidszon, tidsförskjutning (t.ex. -0800)

Notera: Definition av ”Java.util.date” som datumdatum = nytt datum () har upphört. Så använd alltid SimpleDateFormat med en matchande ingångssträng som du behöver konvertera.

Således har vi kommit till slutet av den här artikeln om ”Hur konverterar man strängar till datum i Java?”. Om du vill lära dig mer,kolla in av Edureka, ett pålitligt inlärningsföretag online. Edurekas Java J2EE- och SOA-utbildning och certifieringskurs är utformad för att träna dig för både grundläggande och avancerade Java-koncept tillsammans med olika Java-ramverk som Hibernate & Spring.

Har du en fråga till oss? Vänligen nämna det i kommentarsektionen i den här artikeln så kommer vi tillbaka så snart som möjligt.