Jak převést řetězec na objekt DateTime v Javě

Jak Prevest Retezec Na Objekt Datetime V Jave



Při programování v Javě může být někdy nutné provést konverzi objektu String to date. Ačkoli v Javě neexistuje žádná předdefinovaná metoda pro zadaný účel, přesto lze pro převod řetězce na objekt DateTime použít několik metod.

Tento blog vysvětlí postupy pro konverzi objektu String to a DateTime v Javě.

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

Pro převod řetězce na objekt DateTime v Javě můžete použít:







  • Třída SimpleDateFormat
  • Třída LocalDate
  • Třída ZonedDateTime

Podívejme se, jak zmíněné třídy pomáhají při převodu String na objekt DateTime.



Metoda 1: Převést řetězec na objekt DateTime pomocí třídy SimpleDateFormat

Pro převod řetězce na objekt DateTime můžete použít Java “ SimpleDateFormat “třída. Pomocí této třídy lze řetězec analyzovat do požadovaného objektu DateTime pomocí metody „parse()“.



Syntax
Zde je syntaxe metody parse() třídy SimpleDateFormat:





sf. rozebrat ( 'Řetězec data a času' ) ;

' sf “ je objekt třídy SimpleDateFormat, který vyvolává „ parse() ” předáním řetězce ve formátu DateTime.

Příklad
Nejprve vytvoříme instanci třídy SimpleDateFormat a jako parametr předáme formát data a času:



SimpleDateFormat sf = Nový SimpleDateFormat ( 'dd-MM-yyyy;HH:mm:ss' ) ;

Použijte blok try-catch, ve kterém musíte nejprve vytvořit objekt „ datum “třída s názvem “ čas schůzky “. Tento objekt uloží datum analyzované jako řetězec pomocí metody parse() a poté vytiskne převedený objekt DateTime s „ System.out.println() “ metoda:

Snaž se {
datum čas schůzky = sf. rozebrat ( '08-19-2022; 01:34:23' ) ;
Systém. ven . println ( čas schůzky ) ;
} úlovek ( ParseException e ) {
a. printStackTrace ( ) ;
}

Daný výstup indikuje, že řetězec byl úspěšně převeden na objekt DateTime:

Nyní se podívejme, jak třída LocalDate funguje pro převod řetězce na objekt DateTime.

Metoda 2: Převést řetězec na objekt DateTime pomocí třídy LocalDate

Další populární třída DateTime v Javě je „ LocalDateTime “. Formát jeho objektu obsahuje „ T “, což představuje „ Čas “ a funguje jako oddělovací bod mezi datem a časem.

Syntax
Při použití metody parse() třídy LocalDate lze použít níže uvedenou syntaxi:

LocalDateTime. rozebrat ( 'Řetězec data a času' ) ;

Zde třída LocalDate volá „ parse() ” předáním řetězce DateTime, aby se převedl na objekt DateTime.

Příklad
Nejprve vytvoříme objekt třídy LocalDateTime s názvem „ čas schůzky “ a analyzujte zadaný argument řetězce pomocí „ parse() “ metoda:

LocalDateTime dateTime = LocalDateTime. rozebrat ( '2022-08-19T02:30:45' ) ;

Nakonec vytiskněte výsledek „ čas schůzky ” objekt na konzole:

Systém. ven . println ( čas schůzky ) ;

Výstup

Metoda 3: Převést řetězec na objekt DateTime pomocí třídy ZonedDateTime

Někdy potřebujeme informace o časovém pásmu s datem a časem. Za tímto účelem Java podporuje třídu s názvem „ ZonedDateTime ”, který při práci s datem a časem načte aktuální časová pásma. Tato třída také využívá „ parse() ” s třídou ZonedDateTime k analýze řetězce a jeho převedení na objekt DateTime.

Syntax
Chcete-li použít třídu ZonedDateTime, postupujte podle dané syntaxe:

ZonedDateTime. rozebrat ( 'Řetězec data a času' ) ;

Zde třída ZonedDateTime vyvolá „ parse() ” předáním řetězce, který má být převeden na objekt DateTime.

Příklad
Nejprve vytvoříme objekt třídy ZonedDateTime s názvem „ zóna “ a zavolejte „ parse() ” předáním řetězce DateTime jako argumentu. Zadaný řetězec představuje datum a čas „ Amerika ' časové pásmo:

Zóna ZonedDateTime = ZonedDateTime. rozebrat
( '2022-08-19T02:56:45.513464300-05:00[Amerika/Chicago]' ) ;

Vytiskněte převedený objekt DateTime:

Systém. ven . println ( zóna ) ;

Jak vidíte, převedený objekt DateTime se zobrazí s informacemi o časovém pásmu:

Shromáždili jsme všechny potřebné informace pro převod řetězce na objekt DateTime v Javě.

Závěr

Pro převod řetězce na objekt DateTime se v Javě používá několik způsobů, například třída SimpleDateFormat, třída LocalDate a třída ZonedDateTime. Tyto třídy jsou součástí balíčků Java.time a Java.util. Chcete-li převést řetězec pomocí těchto tříd, spusťte příkaz „ parse() ” předáním řetězce jako argumentu. Tento blog vysvětlil postupy převodu řetězce na objekt DateTime v Javě na správných příkladech.