Was ist der beste Weg, um ein Datum zu analysieren, in MM/DD/YY-format und passen es an die aktuellen / vorherigen Jahrhundert?

Einer unserer Kunden will in der Lage sein, geben Sie ein Datum mit nur 2 stellen für das Jahr Komponente. Wird das Datum in der Vergangenheit, so wollen wir es an die Arbeit für die vorherigen Jahrhundert, wenn die 2-digit year ist nach dem aktuellen Jahr, aber die Arbeit für das aktuelle Jahrhundert, wenn die 2-digit year ist gleich oder kleiner als das aktuelle Jahr.

heute 10/30/2008

01/01/01 = 01/01/2001

01/01/09 = 01/01/1909

Dies ist eine seltsame Forderung, und ich löste das problem, ich weiß einfach nicht, wie meine Lösung.
Es fühlt sich an wie es ist ein besserer Weg, dies zu tun.

Danke für die Hilfe.

public static String stupidDate(String dateString)
{
    String twoDigitYear = StringUtils.right(dateString, 2);
    String newDate = StringUtils.left(dateString, dateString.length() - 2);
    int year = NumberUtils.toInt(twoDigitYear);
    Calendar c = GregorianCalendar.getInstance();
    int centuryInt = c.get(Calendar.YEAR) - year;
    newDate = newDate + StringUtils.left(Integer.toString(centuryInt), 2) + twoDigitYear;
    return newDate;
}

InformationsquelleAutor ScArcher2 | 2008-10-30

Schreibe einen Kommentar