De klasse java.text.SimpleDateFormat biedt methoden voor het opmaken en parseren van datum en tijd in Java. De SimpleDateFormat is een concrete klasse voor het formatteren en parseren van datums die de klasse java.text.DateFormat overneemt.
Let erop dat opmaak betekent het converteren van datum naar string En parseren betekent het converteren van string naar datum .
Constructors van de klasse SimpleDateFormat
SimpleDateFormat(String patroon_args): Instantiseert de klasse SimpleDateFormat met behulp van het meegeleverde patroon - patroon_args, standaard datumnotatiesymbolen voor de standaard FORMAT-landinstelling.
SimpleDateFormat(String patroon_args, Locale locale_args): Instantiseert de klasse SimpleDateFormat met behulp van het meegeleverde patroon - pattern_args. Voor de opgegeven FORMAT Locale zijn de standaarddatumnotatiesymbolen - locale_args.
SimpleDateFormat(String patroon_args, DateFormatSymbolen formatSymbolen): Instantiseert de klasse SimpleDateFormat en gebruikt het meegeleverde patroon - pattern_args en de datumformatSymbols.
Java SimpleDateFormat Voorbeeld: Datum naar tekenreeks
Laten we het eenvoudige voorbeeld bekijken datumnotatie in Java met behulp van de klasse java.text.SimpleDateFormat.
Bestandsnaam: SimpleDateFormatExample.java
tekenreeksbouwer java
import java.text.SimpleDateFormat; import java.util.Date; public class SimpleDateFormatExample { public static void main(String[] args) { Date date = new Date(); SimpleDateFormat formatter = new SimpleDateFormat('dd/MM/yyyy'); String strDate= formatter.format(date); System.out.println(strDate); } }Test het nu
Uitgang:
13/04/2015
Opmerking: M (hoofdletter M) staat voor maand en m (kleine m) staat voor minuut in Java.
Laten we het volledige voorbeeld bekijken noteer datum en tijd in Java met behulp van de klasse java.text.SimpleDateFormat.
Bestandsnaam: SimpleDateFormatExample2.java
import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.Date; import java.util.Locale; public class SimpleDateFormatExample2 { public static void main(String[] args) { Date date = new Date(); SimpleDateFormat formatter = new SimpleDateFormat('MM/dd/yyyy'); String strDate = formatter.format(date); System.out.println('Date Format with MM/dd/yyyy : '+strDate); formatter = new SimpleDateFormat('dd-M-yyyy hh:mm:ss'); strDate = formatter.format(date); System.out.println('Date Format with dd-M-yyyy hh:mm:ss : '+strDate); formatter = new SimpleDateFormat('dd MMMM yyyy'); strDate = formatter.format(date); System.out.println('Date Format with dd MMMM yyyy : '+strDate); formatter = new SimpleDateFormat('dd MMMM yyyy zzzz'); strDate = formatter.format(date); System.out.println('Date Format with dd MMMM yyyy zzzz : '+strDate); formatter = new SimpleDateFormat('E, dd MMM yyyy HH:mm:ss z'); strDate = formatter.format(date); System.out.println('Date Format with E, dd MMM yyyy HH:mm:ss z : '+strDate); } }Test het nu
Uitgang:
Date Format with MM/dd/yyyy : 04/13/2015 Date Format with dd-M-yyyy hh:mm:ss : 13-4-2015 10:59:26 Date Format with dd MMMM yyyy : 13 April 2015 Date Format with dd MMMM yyyy zzzz : 13 April 2015 India Standard Time Date Format with E, dd MMM yyyy HH:mm:ss z : Mon, 13 Apr 2015 22:59:26 IST
Java SimpleDateFormat Voorbeeld: Tekenreeks tot datum
Laten we het eenvoudige voorbeeld bekijken tekenreeks omzetten in datum met behulp van de klasse java.text.SimpleDateFormat.
Bestandsnaam: SimpleDateFormatExample3.java
import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.Date; public class SimpleDateFormatExample3 { public static void main(String[] args) { SimpleDateFormat formatter = new SimpleDateFormat('dd/MM/yyyy'); try { Date date = formatter.parse('31/03/2015'); System.out.println('Date is: '+date); } catch (ParseException e) {e.printStackTrace();} } }Test het nu
Uitgang:
Date is: Tue Mar 31 00:00:00 IST 2015
Methoden
set2CijferJaarStart()
Syntaxis:
public void set2DigitYearStart(Date startDate)
Parameters:
startDate: De datum is ingesteld in het bereik - startDate tot startDate + 100 jaar
Retourtype:
Het retourtype van de methode is ongeldig
Implementatie:
Laten we eens kijken hoe we de methode in de code kunnen implementeren.
Bestandsnaam: Set2DigitYearStart.java
// important import statements import java.util.Calendar; import java.text.*; public class Set2DigitYearStart { // main method public static void main(String argvs[]) throws InterruptedException { // creating an object of the class SimpleDateFormat SimpleDateFormat sdf = new SimpleDateFormat('MM / dd / yy' ); try { // getting the instance of the class Calendar Calendar clndr = Calendar.getInstance(); clndr.setTime(sdf.parse('11 / 12 / 21')); System.out.println('Initial Timing is : ' + clndr.getTime()); // Setting 2020 // Using the set2DigitYearStart() method sdf.set2DigitYearStart(sdf.parse('02 / 02 / 2000')); clndr.setTime(sdf.parse('02 / 02 / 15')); System.out.println('The New Timing is : ' + clndr.getTime()); } catch (ParseException exp) { exp.printStackTrace(); } } }
Uitgang:
Initial Timing is : Fri Nov 12 00:00:00 GMT 2021 The New Timing is : Mon Feb 02 00:00:00 GMT 2015
get2DigitYearStart()
Syntaxis:
public Date get2DigitYearStart()
Parameters:
Voor deze methode is geen parameter vereist
Retourtype:
Het retourtype van de methode is Datum en retourneert het begin van de periode van 100 jaar die tijdens het parseren werd ingesteld.
Implementatie:
Laten we eens kijken hoe we de methode in de code kunnen implementeren.
Bestandsnaam: Get2DigitYearStart.java
// important import statements import java.util.Calendar; import java.text.*; public class Get2DigitYearStart { // main method public static void main(String argvs[]) throws InterruptedException { // creating an object of the class SimpleDateFormat SimpleDateFormat sdf = new SimpleDateFormat('MM / dd / yy' ); try { // getting the instance of the class Calendar Calendar clndr = Calendar.getInstance(); clndr.setTime(sdf.parse('11 / 12 / 21')); System.out.println('Initial Timing is : ' + clndr.getTime()); // Setting 2020 // Using the set2DigitYearStart() method sdf.set2DigitYearStart(sdf.parse('02 / 02 / 2000')); System.out.println('The New Timing is : ' + clndr.getTime()); // Using the method get2DigitYearStart() for checking the start year clndr.setTime(sdf.get2DigitYearStart()); System.out.println('The start year is: ' + clndr.get(Calendar.YEAR)); } catch (ParseException exp) { exp.printStackTrace(); } } }
Uitgang:
Initial Timing is : Fri Nov 12 00:00:00 GMT 2021 The New Timing is : Mon Feb 02 00:00:00 GMT 2015 The start year is: 2000
toPattern()
Syntaxis:
public String toPattern()
Parameters:
Voor deze methode is geen parameter vereist
Retourtype:
Het retourtype van de methode is String en retourneert het datumnotatiepatroon.
Implementatie:
Java-tekenreeks in array
Laten we eens kijken hoe we de methode in de code kunnen implementeren.
substring-methode in Java
Bestandsnaam: NaarPattern.java
// important import statements import java.util.Calendar; import java.text.*; public class ToPattern { // main method public static void main(String argvs[]) throws InterruptedException { // creating an object of the class SimpleDateFormat SimpleDateFormat sdf = new SimpleDateFormat(); // Initializing the Calendar object Calendar clndr = Calendar.getInstance(); // getting the Current Date String currDate = sdf.format(clndr.getTime()); System.out.println('Current Date : ' + currDate); // Using the toPattern() method // Displaying the Date Pattern System.out.println('The Date Pattern is: ' + sdf.toPattern()); } }
Uitgang:
Current Date : 12/11/21, 7:24 AM The Date Pattern is: M/d/yy, h:mm a
ontleden()
Syntaxis:
public Date parse()
Parameters:
Voor deze methode is geen parameter vereist
Retourtype:
Het retourtype van de methode is Datum en retourneert de geparseerde datum.
Implementatie:
Laten we eens kijken hoe we de methode in de code kunnen implementeren.
Bestandsnaam: Parse.java
// important import statements import java.util.Calendar; import java.text.*; public class Parse { // main method public static void main(String argvs[]) throws InterruptedException { // creating an object of the class SimpleDateFormat SimpleDateFormat sdf = new SimpleDateFormat('MM / dd / yy' ); try { // getting the instance of the class Calendar Calendar clndr = Calendar.getInstance(); clndr.setTime(sdf.parse('11 / 12 / 21')); System.out.println('Initial Timing is : ' + clndr.getTime()); } catch (ParseException exp) { exp.printStackTrace(); } } }
Uitgang:
Initial Timing is : Fri Nov 12 00:00:00 GMT 2021
ApplyPatroon()
Syntaxis:
public void applyPattern()
Parameters:
Voor deze methode is geen parameter vereist
Retourtype:
Het retourtype van de methode is ongeldig. De methode retourneert dus niets.
Implementatie:
Laten we eens kijken hoe we de methode in de code kunnen implementeren.
Bestandsnaam: ApplyPattern.java
// important import statements import java.util.Calendar; import java.text.*; public class ApplyPattern { // main method public static void main(String argvs[]) throws InterruptedException { // creating an object of the class SimpleDateFormat SimpleDateFormat sdf = new SimpleDateFormat(); // Initializing calendar Object Calendar clndr = Calendar.getInstance(); // Using the arg pattern String ar = 'dd / MM / yyyy HH:mm Z'; // Using the method applyPattern() to set the date to arg format sdf.applyPattern(ar); // for the current time and date String currDate = sdf.format(clndr.getTime()); System.out.println('The current date is: ' + currDate); // Printing the pattern used System.out.println('The Pattern applied is: ' + sdf.toPattern()); } }
Uitgang:
The current date is: 11 / 12 / 2021 07:41 +0000 The Pattern applied is: dd / MM / yyyy HH:mm Z
formaat()
Syntaxis:
string.substring java
public final String format(Date args)
Parameters:
De methode neemt Datum als argument
Retourtype:
Het retourneringstype van de methode is String, en de methode retourneert de opgemaakte tekenreeks van de datum.
Implementatie:
Laten we eens kijken hoe we de methode in de code kunnen implementeren.
Bestandsnaam: Formaat.java
// important import statements import java.util.Calendar; import java.text.*; public class Format { // main method public static void main(String argvs[]) throws InterruptedException { // creating an object of the class SimpleDateFormat SimpleDateFormat sdf = new SimpleDateFormat(); // Initializing calendar Object Calendar clndr = Calendar.getInstance(); System.out.println('The actual date is: ' + clndr.getTime()); // use theh format() method for the current time and date String currDate = sdf.format(clndr.getTime()); System.out.println('The formatted date is: ' + currDate); } }
Uitgang:
The actual date is: Sat Dec 11 13:48:36 GMT 2021 The formatted date is: 12/11/21, 1:48 PM
toLocalizedPattern()
Syntaxis:
public String toLocalizedPattern()
Parameters:
De methode accepteert geen enkel argument
Retourtype:
Het retourtype van de methode is String, en de methode retourneert de datumpatroontekenreeks van de datumformatter.
Implementatie:
Laten we eens kijken hoe we de methode in de code kunnen implementeren.
Bestandsnaam: NaarLocalizedPattern.java
// important import statements import java.util.Calendar; import java.text.*; public class ToLocalizedPattern { // main method public static void main(String argvs[]) throws InterruptedException { // creating an object of the class SimpleDateFormat SimpleDateFormat sdf = new SimpleDateFormat(); // Initializing calendar Object Calendar clndr = Calendar.getInstance(); System.out.println('The Date is: ' + sdf.format(clndr.getTime())); // Using the format() method for formatting the Date to String System.out.println('The pattern in the DateFormater is : ' + sdf.toLocalizedPattern()); } }
Uitgang:
The Date is: 12/11/21, 3:01 PM The pattern in the DateFormater is : M/d/yy, h:mm a