1

我有一个这样的 SimpleDateFormat:

SimpleDateFormat DATE_FORMAT = new SimpleDateFormat("yyyy-MMM-dd HH:mm:ss");

并试图解析这样的,2012-Jul-29 17:14:39 但我得到了

java.text.ParseException:无法解析的日期:com.sysplan.visixd.blastgauge.BGParser.main(Parser.java: 396)

知道为什么吗?

4

4 回答 4

3

这似乎是一个语言环境问题,我试过这个没有任何错误

new SimpleDateFormat("yyyy-MMM-dd HH:mm:ss").parse("2012-Jul-29 17:14:39");

然而这失败了:

new SimpleDateFormat("yyyy-MMM-dd HH:mm:ss", Locale.TAIWAN)
        .parse("2012-Jul-29 17:14:39");

所以这似乎是一个语言环境问题,您需要指定您的语言环境ENGLISH

new SimpleDateFormat("yyyy-MMM-dd HH:mm:ss", Locale.ENGLISH)
        .parse("2012-Jul-29 17:14:39");

那是:

SimpleDateFormat DATE_FORMAT = new SimpleDateFormat(
        "yyyy-MMM-dd HH:mm:ss", Locale.ENGLISH);
于 2013-05-17T10:14:10.860 回答
1

尝试这个

SimpleDateFormat DATE_FORMAT = new SimpleDateFormat("yyyy-MMM-dd HH:mm:ss", Locale.ENGLISH);
于 2013-05-17T10:08:05.377 回答
0

您可以使用下一个代码:

import java.text.DateFormat;
import java.util.Calendar;

public static void main(String[] args) {
        // TODO Auto-generated method stub

Calendar now = Calendar.getInstance();
DateFormat formateadorFechaMedia = DateFormat.getDateInstance(DateFormat.MEDIUM);
System.out.println(formateadorFechaMedia.format(now.getTime()));

}
}
于 2013-05-17T10:26:10.203 回答
0

尝试这个

new SimpleDateFormat("yyyy-MMM-dd HH:mm:ss", Locale.ENGLISH);
于 2013-05-17T10:18:10.287 回答