Jak převést řetězec na datum v Javě?



Tento článek vám představí způsoby, jak můžete převést String na Date v Javě, a také vám poskytne důkladnou praktickou ukázku.

Tento článek vám představí způsoby, jak můžete převést řetězec na datum v a také vám poskytne důkladnou praktickou ukázku. V tomto článku se budeme zabývat následujícími ukazateli,

Pojďme tedy začít





Jak převést řetězec na datum v Javě?

Naučíme se zde „Jak převést objekty String na objekty Date“ pomocí jednoduchých změn kódu a technik. Nejlepší způsob převodu je
Řetězec k datu



SimpleDateFormat.parse (řetězec)

Datum do řetězce

SimpleDateFormat.format (datum)


Analýza funguje různými způsoby:

Pokračováním v tomto článku o převodu řetězce na datum v Javě,



Brát datum jako text

Pokud potřebujete měsíc jako text se třemi písmeny, musíme definovat 3 „M“, které je bráno jako hodnota měsíce. Poté je hodnota měsíce interpretována jako text jako říjen, prosinec, červen atd.

Získat výsledek: 12. prosince 1998

Zde je kód k vyjádření hodnoty řetězce ve formátu data.

Balíček com.test.test import java.text.ParseException import java.text.SimpleDateFormat import java.util.Date veřejná třída TestDateExample1 {public static void main (String [] argv) {SimpleDateFormat formatter = new SimpleDateFormat ('dd-MMM- yyyy ') String dateInString = '12 -Dec-1998' try {Date date = formatter.parse (dateInString) System.out.println (date) System.out.println (formatter.format (date))} catch (ParseException e ) {e.printStackTrace ()}}}

Výstup:
Pá 12. prosince 00:00:00 MYT 1998
12. prosince 1998

Pokračováním v tomto článku o převodu řetězce na datum v Javě,

Chcete-li získat Datum naformátované ve formuláři „12/12/1988“

balíček com.test.date import java.text.ParseException import java.text.SimpleDateFormat import java.util.Date veřejná třída TestDateExample2 {public static void main (String [] argv) {SimpleDateFormat formatter = new SimpleDateFormat ('dd / MM / yyyy ') 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 používá rozhraní Date-Time API, které poskytuje metody parse () k převodu hodnoty String na hodnotu Date-Time. Pro základní pravidla analýzy byly definovány standardy, které představují hodnotu řetězce pro datum a čas v obou ISO_LOCAL_TIME nebo ISO_LOCAL_DATE formát. Vložíme kód formátoru do bloku „try“ a „catch“, který za běhu vyvolá výjimku vždy, když není splněno definované pravidlo.
Příklad jednoduché analýzy je:

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

Pokračováním v tomto článku o převodu řetězce na datum v Javě,

jak používat iterátor v javě

Změna časového pásma

Abychom to mohli udělat, musíme definovat metody analýzy časového pásma známé jako „ZonedDateTime“, abychom přímo změnili hodnotu řetězce na formát data a času. Vše, co musíte udělat, je definovat časové pásmo, ve kterém chcete nastavit datum a čas. Například zde potřebujeme naše datum a čas v evropské zóně. Tiemzónu tedy definujeme jako Evropu / Paříž pomocí metody „ZonedDateTime“ ::

ZonedDateTime zonedDateTime = ZonedDateTime.parse ('2015-05-05T10: 15: 30 + 01: 00 [Evropa / Paříž]')

Nyní si vezmeme jednoduché Datum a čas API který převádí hodnotu String na hodnotu Date pomocí SimpleDateFormat:

  1. Java představila nový Čas schůzky Volání API s jeho verzí 8 představuje parametry data a času známé jako „java.time“. Staré volání ve všech předchozích verzích představující datum bylo java.util.date.

Podívejme se, jak skutečně převést řetězec na místní datový typ data a času:

Analyzovat volání API:

Pokud je hodnota řetězce, kterou musíme převést na Čas schůzky typ je formátu ISO-801, pak můžeme jednoduše volat třídy DateFormat a SimpleDateFormat pomocí metod parse ().

Příklad stejného:

import java.text.SimpleDateFormat import java.util.Date veřejná třída StringToDateExample1 {public static void main (String [] args) vyvolá výjimku {String sDate1 = '31 / 12/1998 'Datum date1 = nový SimpleDateFormat (' dd / MM / yyyy '). parse (sDate1) System.out.println (sDate1 +' t '+ date1)}}

Výstup:
31.12.1998 Čt 31. prosince 00:00:00 JE 1998

import java.text.SimpleDateFormat import java.util.Date veřejná třída StringToDateExample2 {public static void main (String [] args) vyvolá výjimku {String sDate1 = '12 / 10/1988 'String sDate2 = '12 -Oct-1988' String sDate3 = '12 10, 1988 'String sDate4 =' St, 12. října 1988 'String sDate5 =' St, 12. října 1988 23:37:50 'String sDate6 = '31 -Dec-1998 23:37:50' SimpleDateFormat formatter1 = nový SimpleDateFormat ('dd / MM / rrrr') SimpleDateFormat formatter2 = nový SimpleDateFormat ('dd-MMM-rrrr') SimpleDateFormat formatter3 = nový SimpleDateFormat ('MM dd, rrrr') SimpleDateFormat formatter4 = nový SimpleDateFormat ( rrrr ') SimpleDateFormat formatter5 = nový SimpleDateFormat (' E, MMM dd rrrr HH: mm: ss ') SimpleDateFormat formatter6 = nový SimpleDateFormat (' dd-MMM-rrrr HH: mm: ss ') Datum datum1 = formatter1.parse (sDate1) Datum date2 = formatter2.parse (sDate2) Datum date3 = formatter3.parse (sDate3) Datum date4 = formatter4.parse (sDate4) Datum date5 = formatter5.parse (sDate5) Datum date6 = 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)}}

Použitím výše uvedeného kódu ve skutečnosti získáte výsledky ve všech uvedených formátech. Takže jsme definovali různé formáty data v hodnotě String a poté jsme je analyzovali definováním třídy SimpleDateFormat. Po dokončení se výstup generuje ve všech zmíněných formátech data a času.

31.12.1998 Čt 31. prosince 00:00:00 JE 1998

31. prosince 1998 Čt 31. prosince 00:00:00 JE 1998

12 31, 1998 Čt 31. prosince 00:00:00 JE 1998

Čt, 31. prosince 1998 Čt 31. prosince 00:00:00 JE 1998

Čt, 31. prosince 1998 23:37:50 Čt 31. prosince 23:37:50 IS 1998

31. prosince 1998 23:37:50 Čt 31. prosince 23:37:50 IS 1998

Další informace o formátu data najdete v dokumentu javadoc . Zde jsou uvedeny některé z platných formátů String to Date:
y = rok (rr nebo rrrr)

M = měsíc (MM)

d = den v měsíci (dd)

h = hodina (0-12) (hh)

H = hodina (0-23) (HH)

m = minuta v hodině (mm)

s = sekundy (ss)

S = milisekundy (SSS)

z = text časového pásma (např. tichomořský standardní čas…)

Z = časové pásmo, časový posun (např. -0800)

Poznámka: Definování „Java.util.date“ jako Datum datum = nové datum () bylo zastaralé. Takže vždy použijte SimpleDateFormat s odpovídajícím vstupním řetězcem, který potřebujete převést.

Tak jsme se dostali na konec tohoto článku o „Jak převést řetězec na datum v Javě?“. Pokud se chcete dozvědět více,podívejte se na Edureka, důvěryhodná online vzdělávací společnost. Výcvikový a certifikační kurz Edureka Java J2EE a SOA je navržen tak, aby vás vyškolil jak pro základní, tak pro pokročilé koncepty Java spolu s různými rámci Java jako Hibernate & Spring.

Máte na nás dotaz? Uveďte to prosím v sekci komentářů tohoto článku a my se vám ozveme co nejdříve.

součet číslic čísla v Javě pomocí smyčky for