如何使用DateFormat解析日期字符串?

how*_*ttl 4 android date-format simpledateformat

我有一个日期字符串,格式如下:

Thu Oct 20 14:39:19 PST 2011

我想使用DateFormat解析它以获取Date对象.我正在尝试这样:

DateFormat df = DateFormat.getDateTimeInstance(DateFormat.MEDIUM, DateFormat.SHORT);
Date date = df.parse(dateString);
Run Code Online (Sandbox Code Playgroud)

这给出了ParseException("不可解析的日期").

我也试过这个:

SimpleDateFormat df = new SimpleDateFormat("EEE-MMM-dd HH:mm:ss z yyyy");
Run Code Online (Sandbox Code Playgroud)

结果相同.

这是正确的SimpleDateFormat字符串吗?有没有更好的方法来解析这个日期?

Kur*_*aum 9

你确定日期字符串真的被分配了值Thu Oct 20 14:39:19 PST 2011吗?如果这不是问题,您可以尝试使用适合我的代码:

import java.text.SimpleDateFormat;
import java.util.Date;
public class Test{


  public static void main(String args[]){

    String toParse = "Thu Oct 20 14:39:19 PST 2011";

    String format = "EEE MMM dd HH:mm:ss z yyyy";
    SimpleDateFormat formater = new SimpleDateFormat(format);
    try{
      Date parsed = formater.parse(toParse);
    } catch(Exception e){
      System.out.println(e.getMessage());
    }

  }
}
Run Code Online (Sandbox Code Playgroud)