从字符串中解析日期在 android 中给出异常

parse a date from string gives exception in android

我想将字符串从字符串解析为日期,日期的格式类似于Tuesday March 19,2015。我想将其解析并格式化为 yyyy-dd-mm 格式。下面的代码给我例外 "unparceble date".

代码:

DateFormat df1 = new SimpleDateFormat("yyyy-MM-dd");
try {
    date1 = df1.parse(currentDate);
    System.out
            .println("============my formated date====================" + date1.toString());
    Calendar cal = Calendar.getInstance();
    cal.setTime(date1);
    cal.add(Calendar.DATE, 10); // add 10 days

    date1 = cal.getTime();

    System.out.println("==============added date==============" + date1.toString());

在将其格式化为其他日期之前,您必须将其解析为当前格式的日期

DateFormat df_parse = new SimpleDateFormat("EEEE MMM dd,yyyy");
Date date_parse = df_parse.format(currentDate);
DateFormat df1 = new SimpleDateFormat("yyyy-MM-dd");
date1 = df1.parse(date_parse);

我创建了一个转换日期格式的常用函数。您必须传递旧日期格式、新日期格式和日期。

public static String convertDateFormat(String oldFormat, String newFormat, String inputDate)
    {
        DateFormat theDateFormat = new SimpleDateFormat(oldFormat);
        Date date = null;

        try
        {
            date = theDateFormat.parse(inputDate);
        }
        catch (ParseException parseException)
        {
            // Date is invalid. Do what you want.
        }
        catch (Exception exception)
        {
            // Generic catch. Do what you want.
        }

        theDateFormat = new SimpleDateFormat(newFormat);
        return theDateFormat.format(date).toString();
    }

//调用函数

String convertedDate = convertDateFormat("EEEE MMM dd,yyyy","yyyy-MM-dd",dateToConvert);