将日期作为字符串转换为日期作为另一种格式的字符串

时间:2013-08-17 17:31:34

标签: java string date formatting

我如何解析字符串“2013-03-31”,所以我会得到 - “2013年3月31日太阳报”。 我试图解析如下:

final SimpleDateFormat formatter = new SimpleDateFormat("dd-MM-yyyy DD");
try {
    Date data = formatter.parse(eventDate);
    System.out.println(data);
} catch (Exception e) {
    System.out.println(e.getMessage());
}

我得到Unparseable date: "2013-03-31" (at offset 10)例外文字。

String表示的日期是否正确,如果正确,我必须解析它。

4 个答案:

答案 0 :(得分:1)

输入格式:"yyyy-MM-dd"
输出格式:"dd MMMM yyyy EEE"

final SimpleDateFormat inputFormat = new SimpleDateFormat("yyyy-MM-dd");
final SimpleDateFormat outputFormat = new SimpleDateFormat("dd MMMM yyyy EEE");
try {
    Date data = inputFormat.parse(eventDate);
    System.out.println(outputFormat.format(data));
} catch (Exception e) {
    System.out.println(e.getMessage());
}

答案 1 :(得分:0)

答案 2 :(得分:0)

您没有指定日期输入格式:

String eventDate = "2013-03-31";

final SimpleDateFormat inputFormat = new SimpleDateFormat("yyyy-MM-dd");
final SimpleDateFormat outputFormat = new SimpleDateFormat(
        "dd MMMM yyyy EEE");
try {

    Date date = inputFormat.parse(eventDate);
    System.out.println(outputFormat.format(date));

} catch (Exception e) {

    e.printStackTrace();

}

答案 3 :(得分:0)

public static String getGmtTmFromLcl(String inputDtm, String inputFormat, String outputFormat) throws Exception {
        SimpleDateFormat format = new SimpleDateFormat(inputFormat);
        Date dt = format.parse(inputDtm);
        format = new SimpleDateFormat(outputFormat);
        return format.format(dt);
    }
相关问题