Here you can find the source of convertIntToDate(final int iDate, final StringBuilder verbatimDate)
Parameter | Description |
---|---|
iDate | the int to be converted |
public static Date convertIntToDate(final int iDate, final StringBuilder verbatimDate)
//package com.java2s; /* Copyright (C) 2015, University of Kansas Center for Research * /*from w w w . j a v a 2 s. c o m*/ * Specify Software Project, specify@ku.edu, Biodiversity Institute, * 1345 Jayhawk Boulevard, Lawrence, Kansas, 66045, USA * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License * as published by the Free Software Foundation; either version 2 * of the License, or (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */ import java.util.Calendar; import java.util.Date; import java.util.GregorianCalendar; public class Main { protected static Calendar calendar = new GregorianCalendar(); /** * Converts an integer time in the form of YYYYMMDD to the proper Date * @param iDate the int to be converted * @return the date object * @return the verbatimDate strin that holds old invalid verbatim dates */ public static Date convertIntToDate(final int iDate, final StringBuilder verbatimDate) { calendar.clear(); int year = iDate / 20000; if (year > 1600) { int tmp = (iDate - (year * 20000)); int month = tmp / 100; int day = (tmp - (month * 100)); if (month == 0 || day == 0) { verbatimDate.setLength(0); verbatimDate.append(Integer.toString(iDate)); if (month == 0) { month = 7; } if (day == 0) { day = 1; } } calendar.set(year, month - 1, day); } else { calendar.setTimeInMillis(0); } return calendar.getTime(); } }