Heim  >  Artikel  >  Java  >  Wie analysiere ich eine Zeichenfolge im Format TT/MM/JJJJ in ein Datum im TT/MM/JJJJ in Java?

Wie analysiere ich eine Zeichenfolge im Format TT/MM/JJJJ in ein Datum im TT/MM/JJJJ in Java?

WBOY
WBOYnach vorne
2023-08-29 19:13:061491Durchsuche

Das Paket

Wie analysiere ich eine Zeichenfolge im Format TT/MM/JJJJ in ein Datum im TT/MM/JJJJ in Java?

java.text stellt eine Klasse namens SimpleDateFormat zum Formatieren und Analysieren von Datumsangaben auf die gewünschte Weise (nativ) bereit.

Einer der Konstruktoren dieser Klasse akzeptiert einen Zeichenfolgenwert, der das gewünschte Datumsformat darstellt, und ein Konstruktor-SimpleDateFormat-Objekt.

Die format()-Methode dieser Klasse akzeptiert ein java.util.Date-Objekt und gibt eine Datums-/Uhrzeitzeichenfolge in dem durch das aktuelle Objekt dargestellten Format zurück.

Parsen Sie also die Datumszeichenfolge in ein anderes Datumsformat –

  • Holen Sie sich die eingegebene Datumszeichenfolge.

  • Konvertieren Sie es in ein java.util.Date-Objekt.

    >
  • Instanziieren Sie die SimpleDateFormat-Klasse, indem Sie das gewünschte (neue) Format als String an ihren Konstruktor übergeben.

  • Rufen Sie die Methode format() auf, indem Sie das oben erhaltene Date-Objekt als Parameter übergeben.

Beispiel

Live-Demonstration

import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.Scanner;
public class FormattingDate {
   public static Date StringToDate(String dob) throws ParseException {
      //Instantiating the SimpleDateFormat class
      SimpleDateFormat formatter = new SimpleDateFormat("dd-MM-yyyy");
      //Parsing the given String to Date object
      Date date = formatter.parse(dob);
      System.out.println("Date object value: "+date);
      return date;
   }
   public static void main(String args[]) throws ParseException {
      //Reading name and date of birth from the user
      Scanner sc = new Scanner(System.in);
      System.out.println("Enter your name: ");
      String name = sc.next();
      System.out.println("Enter your date of birth (dd-MM-yyyy): ");
      String dob = sc.next();
      //Converting String to Date
      Date date = FormattingDate.StringToDate(dob);
      System.out.println("Select format: ");
      System.out.println("a: MM-dd-yyyy || b: dd-MM-yyyy || c: yyyy-MM-dd ");
      char ch = sc.next().toCharArray()[0];;
      switch (ch) {
         case 'a':
            System.out.println("Date in the format: MM-dd-yyyy");
            System.out.println(new SimpleDateFormat("MM-dd-yyyy").format(date));
            break;
         case 'b':
            System.out.println("Date in in the format: dd-MM-yyyy");
            System.out.println(new SimpleDateFormat("dd-MM-yyyy").format(date));
            break;
         case 'c':
            System.out.println("Date in the format: yyyy-MM-dd");
            System.out.println(new SimpleDateFormat("yyyy-MM-dd").format(date));
            break;
         default:
            System.out.println("Model not found");
            break;
      }
   }
}

Ausgabe

Enter your name:
Krishna
Enter your date of birth (dd-MM-yyyy):
26-09-1989
Date object value: Tue Sep 26 00:00:00 IST 1989
Select format:
a: MM-dd-yyyy || b: dd-MM-yyyy || c: yyyy-MM-dd
a
Date in the format: MM-dd-yyyy
09-26-1989

Das obige ist der detaillierte Inhalt vonWie analysiere ich eine Zeichenfolge im Format TT/MM/JJJJ in ein Datum im TT/MM/JJJJ in Java?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:tutorialspoint.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen