Šis raksts jūs iepazīstinās ar veidiem, kā jūs varat konvertēt virkni uz Date un arī sniedz jums rūpīgu praktisku demonstrāciju. Šajā rakstā tiks apskatīti šādi norādījumi,
- Kā Java konvertēt virkni uz datumu?
- Datuma uzņemšana kā teksts>
- Lai datums tiktu formatēts formā “12/12/1988”
- Lai mainītu laika joslu
Kā Java konvertēt virkni uz datumu?
Mēs uzzināsim šeit “Kā pārveidot virknes objektus par datuma objektiem”, izmantojot vienkāršas koda izmaiņas un paņēmienus. Labākais veids, kā pārveidot, ir
Stīgas līdz datumam
SimpleDateFormat.parse (virkne)
Datums līdz virknei
SimpleDateFormat.format (datums)
Parsēšana darbojas dažādos veidos:
Turpinot šo rakstu par virknes konvertēšanu uz datumu Java,
Datuma uztveršana kā teksts
Ja jums mēnesis ir vajadzīgs kā trīs burtu teksts, mums ir jādefinē 3 ‘M’, kas tiek ņemti par mēneša vērtību. Tad mēneša vērtība tiek interpretēta kā teksts, piemēram, oktobris, decembris, jūnijs utt.
Lai iegūtu rezultātu: 1998. gada 12. decembrī
Šis ir kods, kas norāda virknes vērtību datuma formātā.
Iepakojuma com.test.test importēt java.text.ParseException importēt java.text.SimpleDateFormat importēt java.util.Date publisko klasi TestDateExample1 {public static void main (String [] argv) {SimpleDateFormat formatter = new SimpleDateFormat ('dd-MMM- yyyy ') String dateInString = '12 -Dec-1998' mēģiniet {Date date = formatter.parse (dateInString) System.out.println (date) System.out.println (formatter.format (date))} catch (ParseException e ) {e.printStackTrace ()}}}
Izeja:
Piektdien, 12. decembrī, 00:00:00 MYT 1998
1998. gada 12. decembris
Turpinot šo rakstu par virknes konvertēšanu uz datumu Java,
Lai datums tiktu formatēts formā “12/12/1988”
pakete com.test.date importēt java.text.ParseException importēt java.text.SimpleDateFormat importēt java.util.Date publiskā klase TestDateExample2 {public static void main (String [] argv) {SimpleDateFormat formatter = new SimpleDateFormat ('dd / MM / yyyy ') String dateInString = '12 / 12/1988', mēģiniet {Date date = formatter.parse (dateInString) System.out.println (date) System.out.println (formatter.format (date))} catch (ParseException e ) {e.printStackTrace ()}}}
Java 8 izmanto datuma un laika API, kas nodrošina parsēšanas () metodes, lai pārveidotu virknes vērtību datuma un laika vērtībā. Parsēšanas pamatnoteikumiem ir noteikti standarti, kas norāda virknes vērtību datumam un laikam jebkurā no tiem ISO_LOCAL_TIME vai ISO_LOCAL_DATE formātā. Formatētāja kods ir ievietots blokā “mēģināt” un “noķert”, kas izpildes laikā rada izņēmumu ikreiz, kad noteiktais noteikums netiek izpildīts.
Vienkāršs parsēšanas piemērs ir:
LocalDateTime dateTime = LocalDateTime.parse ('2018-05-05T11: 50: 55')
Turpinot šo rakstu par virknes konvertēšanu uz datumu Java,
Lai mainītu laika joslu
Lai to izdarītu, mums ir jādefinē laika joslu parsēšanas metodes, kas pazīstamas kā “ZonedDateTime”, lai tieši mainītu virknes vērtību datuma un laika formātā. Viss, kas jums jādara, ir noteikt laika joslu, kurā vēlaties datumu un laiku. Piemēram, šeit mums ir nepieciešams datums un laiks Eiropas zonā. Tātad, mēs definējam tiemzonu kā Eiropu / Parīzi, izmantojot metodi ‘ZonedDateTime’:
ZonedDateTime zonedDateTime = ZonedDateTime.parse ('2015-05-05T10: 15: 30 + 01: 00 [Eiropa / Parīze]')
Tagad pieņemsim vienkāršo Datuma un laika API kas konvertē virknes vērtību datuma vērtībā, izmantojot SimpleDateFormat:
- Java ieviesa jaunu Datums Laiks API izsaukums ar tā 8. versiju norāda datuma un laika parametrus, kas pazīstami kā “java.time”. Vecais aicinājums visās iepriekšējās versijās norādīt datumu bija java.util.date.
Apskatīsim, kā faktiski pārveidot virkni vietējā datuma un laika datu tipā:
Parsējiet API izsaukumu:
Ja virknes vērtība, kas mums jāpārvērš par Datums Laiks tips ir ISO-801 formātā, tad mēs varam vienkārši izsaukt DateFormat un SimpleDateFormat klases, izmantojot parse () metodes.
Piemērs tam pašam:
importēt java.text.SimpleDateFormat importēt java.util.Date publiskā klase StringToDateExample1 {public static void main (String [] args) izmet izņēmumu {String sDate1 = '31 / 12/1998 'Date date1 = new SimpleDateFormat (' dd / MM / gggg '). parsēt (sDate1) System.out.println (sDate1 +' t '+ date1)}}
Izeja:
31.12.1998 Ceturtdecembris 31 00:00:00 IS 1998
importēt java.text.SimpleDateFormat importēt java.util.Date publiskā klase StringToDateExample2 {public static void main (String [] args) met izņēmumu {String sDate1 = '12 / 10/1988 'String sDate2 = '12 -Oct-1988' String sDate3 = '12 10, 1988 'String sDate4 =' Trešdien, 1988. gada 12. oktobrī 'String sDate5 =' Trešdien, 1988. gada 12. oktobrī 23:37:50 'String sDate6 = '31 -Dec-1998 23:37:50' SimpleDateFormat formatatter1 = new SimpleDateFormat ('dd / MM / gggg') SimpleDateFormat formatētājs2 = jauns SimpleDateFormat ('dd-MMM-yyyy') SimpleDateFormat formatter3 = jauns SimpleDateFormat ('MM dd, gggg') SimpleDateFormat formatter4 = jauns SimpleDateFormat ( yyyy ') SimpleDateFormat formatter5 = jauns SimpleDateFormat (' E, MMM dd gggg HH: mm: ss ') SimpleDateFormat formatter6 = jauns SimpleDateFormat (' dd-MMM-yyyy HH: mm: ss ') Date1 = formatter1.parse (sDate1) Date date2 = formatter2.parse (sDate2) Date date3 = formatter3.parse (sDate3) Datuma datums4 = formatter4.parse (sDate4) Datuma datums5 = formatter5.parse (sDate5) Datuma datums6 = formatter6.parse (sDate6) System.out.println (sDat e1 + 't' + date1) 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)}}
Izmantojot iepriekš minēto kodu, jūs faktiski iegūstat rezultātus visos minētajos formātos. Tātad mēs definējām dažādus datuma formātus virknes vērtībā un pēc tam tos parsējām, definējot klasi SimpleDateFormat. Kad tas ir izdarīts, izvade ģenerē visus minētos datuma un laika formātus.
31.12.1998 Ceturtdecembris 31 00:00:00 IS 1998
1998. gada 31. decembris Ceturtdecembris 31 00:00:00 IS 1998
12 31, 1998 Ceturtdecembris 31 00:00:00 IS 1998
Otrdien, 1998. gada 31. decembrī Ceturtdecembris 31 00:00:00 IS 1998
Otrdiena, 1998. gada 31. decembris 23:37:50 Ceturtdecembris 31 23:37:50 IS 1998
31. decembris-1998 23:37:50 Ceturtdecembris 31 23:37:50 IS 1998
Lai uzzinātu vairāk par datuma formātu, izlasiet dokumentu javadoc . Daži no derīgajiem String to Date formātiem ir minēti šeit:
y = gads (yy vai yyyy)
M = mēnesis (MM)
d = diena mēnesī (dd)
db pārlūks sqlite pārskatīšanai
h = stunda (0–12) (hh)
H = stunda (0-23) (HH)
m = minūte stundā (mm)
s = sekundes (ss)
S = milisekundes (SSS)
z = laika joslas teksts (piemēram, Klusā okeāna standarta laiks…)
Z = laika josla, laika nobīde (piemēram, -0800)
Piezīme: “Java.util.date” definēšana kā Datums datums = jauns datums () ir novecojusi. Tātad, vienmēr izmantojiet SimpleDateFormat ar atbilstošu ievades virkni, kas jāpārvērš.
Tādējādi esam nonākuši pie šī raksta “Kā pārveidot virkni uz datumu Java?” Beigām. Ja vēlaties uzzināt vairāk,pārbaudiet Autors: uzticams tiešsaistes mācību uzņēmums Edureka. Edureka Java J2EE un SOA apmācības un sertifikācijas kurss ir paredzēts, lai apmācītu jūs gan galvenajiem, gan uzlabotajiem Java jēdzieniem kopā ar dažādiem Java ietvariem, piemēram, Hibernate & Spring.
Vai mums ir jautājums? Lūdzu, pieminējiet to šī raksta komentāru sadaļā, un mēs sazināsimies ar jums pēc iespējas ātrāk.