Heim  >  Artikel  >  Java  >  Wie validiere ich eine Datumszeichenfolge anhand eines bestimmten Formats in Java?

Wie validiere ich eine Datumszeichenfolge anhand eines bestimmten Formats in Java?

Linda Hamilton
Linda HamiltonOriginal
2024-10-30 06:26:27767Durchsuche

How to Validate a Date String Against a Specific Format in Java?

So überprüfen Sie, ob das Datumsformat der aktuellen Zeichenfolge dem erforderlichen Format in Java entspricht

Frage:

Entwickeln Sie eine Java-Methode zur Validierung, ob eine vom Benutzer eingegebene Zeichenfolge mit einem bestimmten Datumsformat übereinstimmt, wobei sowohl Nur-Datums- als auch Datums-/Uhrzeitformate berücksichtigt werden.

Lösung:

Nach der Bewertung verschiedener Ansätze, Wir haben uns für die Verwendung der SimpleDateFormat-Klasse entschieden. Hier ist die detaillierte Implementierung:

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

public class DateFormatter {

    public static boolean isValidFormat(String format, String value) {
        Date date = null;
        SimpleDateFormat sdf = new SimpleDateFormat(format);
        try {
            date = sdf.parse(value);
            if (!value.equals(sdf.format(date))) {
                date = null;
            }
        } catch (ParseException e) {
            // Date parsing failed
        }
        return date != null;
    }

    public static void main(String[] args) {
        System.out.println("isValid - dd/MM/yyyy with 20130925 = " + isValidFormat("dd/MM/yyyy", "20130925"));
        System.out.println("isValid - dd/MM/yyyy with 25/09/2013 = " + isValidFormat("dd/MM/yyyy", "25/09/2013"));
        System.out.println("isValid - dd/MM/yyyy with 25/09/2013 12:13:50 = " + isValidFormat("dd/MM/yyyy", "25/09/2013  12:13:50"));
        System.out.println("isValid - yyyy-MM-dd with 2017-18--15 = " + isValidFormat("yyyy-MM-dd", "2017-18--15"));
    }
}</code>

Verwendung:

Übergeben Sie das erforderliche Datumsformat als erstes Argument und die Eingabezeichenfolge als zweites Argument an die Methode isValidFormat. Die Methode gibt einen booleschen Wert zurück, der angibt, ob die Eingabezeichenfolge dem angegebenen Format entspricht.

Beispielausgabe:

isValid - dd/MM/yyyy with 20130925 = false
isValid - dd/MM/yyyy with 25/09/2013 = true
isValid - dd/MM/yyyy with 25/09/2013 12:13:50 = false
isValid - yyyy-MM-dd with 2017-18--15 = false

Das obige ist der detaillierte Inhalt vonWie validiere ich eine Datumszeichenfolge anhand eines bestimmten Formats 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