Java Month Convert parseMonth(final String source)

Here you can find the source of parseMonth(final String source)

Description

Parse the Date using pattern "yyyy-MM"

License

Open Source License

Parameter

Parameter Description
source a parameter

Exception

Parameter Description

Declaration

public static Date parseMonth(final String source) throws ParseException 

Method Source Code


//package com.java2s;
//License from project: Open Source License 

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

import java.util.Date;

public class Main {
    public static final SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd");
    public static final SimpleDateFormat dateTimeFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
    public static final SimpleDateFormat monthFormat = new SimpleDateFormat("yyyy-MM");

    /**//  ww w. ja  v  a  2s  .c o m
     * Parse the Date using pattern "yyyy-MM"
     *
     * @param source
     * @return
     * @throws java.text.ParseException
     */
    public static Date parseMonth(final String source) throws ParseException {
        if (source == null || source.trim().length() == 0) {
            return null;
        }
        return monthFormat.parse(source);
    }

    public static Date parse(final String source) throws ParseException {
        if (source == null || source.trim().length() == 0) {
            return null;
        }
        if (source.length() <= dateTimeFormat.toPattern().length()
                && source.length() >= dateTimeFormat.toPattern().length() - 5) {
            try {
                return dateTimeFormat.parse(source);
            } catch (ParseException ex) {
            }
        }
        if (source.length() <= dateFormat.toPattern().length()
                && source.length() >= dateFormat.toPattern().length() - 2) {
            try {
                return dateFormat.parse(source);
            } catch (ParseException ex) {
            }
        }
        if (source.length() <= monthFormat.toPattern().length()
                && source.length() >= monthFormat.toPattern().length() - 1) {
            try {
                return monthFormat.parse(source);
            } catch (ParseException ex) {
            }
        }
        return dateTimeFormat.parse(source);
    }
}

Related

  1. monthsBetween(String from, String to)
  2. monthStringToInt(String month)
  3. nextMonth()
  4. nextMonth(Date date)
  5. nextMonth(Date date)
  6. setMonths(Date date, int amount)