Java Parse Date parseDateTimeString(final String date)

Here you can find the source of parseDateTimeString(final String date)

Description

parse Date Time String

License

Apache License

Parameter

Parameter Description
date The Z time string date to parse in 'normal' of 'file' formats.

Return

A Date object set to the supplied date.

Declaration

public static Long parseDateTimeString(final String date) throws ParseException 

Method Source Code

//package com.java2s;
/*//from ww  w. j  ava2s.  c  o m
 * Copyright 2016 Crown Copyright
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *     http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */

import java.text.ParseException;
import java.text.SimpleDateFormat;

import java.util.Calendar;

import java.util.Locale;
import java.util.TimeZone;

public class Main {
    private static final TimeZone UTC_TIME_ZONE = TimeZone.getTimeZone("+0000");
    private static final String FILE_MILLISECOND_SEPERATOR = ",";
    private static final String NULL = "NULL";

    /**
     * @param date
     *            The Z time string date to parse in 'normal' of 'file' formats.
     * @return A Date object set to the supplied date.
     */
    public static Long parseDateTimeString(final String date) throws ParseException {
        if (NULL.equals(date) || date == null || date.length() == 0) {
            return null;
        }

        String tmp = date.replace('T', ' ');
        tmp = tmp.replaceAll("#", ":");
        tmp = tmp.replaceAll(FILE_MILLISECOND_SEPERATOR, ".");
        tmp = tmp.replace("Z", " +0000");

        final SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss.SSS zzz");
        final Calendar cal = Calendar.getInstance(UTC_TIME_ZONE, Locale.ROOT);
        sdf.setCalendar(cal);
        sdf.parse(tmp);

        return cal.getTime().getTime();
    }
}

Related

  1. parseDateTime(String s)
  2. parseDateTime(String s)
  3. parseDatetime(String value)
  4. parseDateTimeFromString(String datetime)
  5. parseDateTimeHuman(String dateString)
  6. parseDateTimeString(String dateTime)
  7. parseDateTimeString(String dateTimeString)
  8. parseDateToStr(Date date)
  9. parseDateToString(Date date, String format)