Heim >Java >javaLernprogramm >Wie überprüfe ich die Übereinstimmung des Datumsformats einer Zeichenfolge mit einem bestimmten Muster in Java?

Wie überprüfe ich die Übereinstimmung des Datumsformats einer Zeichenfolge mit einem bestimmten Muster in Java?

DDD
DDDOriginal
2024-10-30 02:21:29247Durchsuche

How to Verify a String's Date Format Conformance to a Given Pattern in Java?

Java: Überprüfung der Konformität des Datumsformats einer Zeichenfolge mit einem gegebenen Muster

Das Problem verstehen

Sie erhalten eine Eingabezeichenfolge und eine gewünschtes Datumsformat. Das Ziel besteht darin, festzustellen, ob die Zeichenfolge mit dem angegebenen Format übereinstimmt, ohne sie tatsächlich in ein Datum zu konvertieren.

Java-Lösung

Ein Ansatz für dieses Problem besteht darin, SimpleDateFormat zu verwenden, um die Zeichenfolge entsprechend dem Gegebenen zu analysieren formatieren und mit der Originalzeichenfolge vergleichen. Wenn sie nicht gleich sind, ist das Format ungültig.

Implementierung

<code class="java">import java.text.ParseException;
import java.text.SimpleDateFormat;

public class DateFormatterValidator {

    public static boolean isValidFormat(String format, String value) {
        try {
            SimpleDateFormat sdf = new SimpleDateFormat(format);
            Date date = sdf.parse(value);
            return value.equals(sdf.format(date));
        } catch (ParseException ex) {
            return false;
        }
    }

    public static void main(String[] args) {
        String format = "dd/MM/yyyy";
        String value1 = "20130925"; // Invalid
        String value2 = "25/09/2013"; // Valid

        System.out.println("isValidFormat(" + format + ", " + value1 + ") = " + isValidFormat(format, value1));
        System.out.println("isValidFormat(" + format + ", " + value2 + ") = " + isValidFormat(format, value2));
    }
}</code>

Ausgabe

isValidFormat(dd/MM/yyyy, 20130925) = false
isValidFormat(dd/MM/yyyy, 25/09/2013) = true

Das obige ist der detaillierte Inhalt vonWie überprüfe ich die Übereinstimmung des Datumsformats einer Zeichenfolge mit einem bestimmten Muster in Java?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn