Java Data Type How to - Convert the date format








Question

We would like to know how to convert the date format.

Answer

import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.Locale;
import java.util.TimeZone;
/*from ww w  . java2  s. c  o m*/
public class Main {

  public static void main(String[] args) throws Exception {
    String inputText = "Nov 10,2015";

    TimeZone utc = TimeZone.getTimeZone("UTC");

    SimpleDateFormat inputFormat = new SimpleDateFormat("MMM d,yyyy", Locale.US);
    inputFormat.setTimeZone(utc);

    SimpleDateFormat outputFormat = new SimpleDateFormat("yyyy-MM-dd",
        Locale.US);
    outputFormat.setTimeZone(utc);

    Date parsed = inputFormat.parse(inputText);
    String outputText = outputFormat.format(parsed);

    System.out.println(outputText);
  }
}

The code above generates the following result.

You can use two SimpleDateFormats.

One to parse, one to format.

public static void main(String[] args) throws ParseException {
    DateFormat parseFormat = new SimpleDateFormat("MMM dd,yyyy");
    DateFormat displayFormat = new SimpleDateFormat("yyyy-MM-dd");

    Date date = parseFormat.parse("Nov 10,1980");
    String s = displayFormat.format(date);
    System.err.println(s);
}