Java日期从Android环境下的特定字符串格式解析

时间:2012-10-04 15:04:53

标签: java android simpledateformat

以下日期格式有什么问题?我收到java.text.ParseException:Unparseable date Thu,03 May 2012 14:00:00 CEST

String inputDate = "Thu, 03 May 2012 14:00:00 CEST";
SimpleDateFormat DATE_FORMATTER = new SimpleDateFormat("EEE, d MMM yyyy HH:mm:ss z");
Date parsedDate = DATE_FORMATTER.parse(inputDate);

我尝试了以下组合,但运气不好:

new SimpleDateFormat("EEE, d MMM yyyy HH:mm:ss z");
new SimpleDateFormat("EEE, dd MMM yyyy HH:mm:ss z");
new SimpleDateFormat("EEE, d MMM yyyy HH:mm:ss zzz");
new SimpleDateFormat("EEE, dd MMM yyyy HH:mm:ss zzz");
new SimpleDateFormat("EEE, d MMM yyyy HH:mm:ss z", Locale.US);
new SimpleDateFormat("EEE, dd MMM yyyy HH:mm:ss z", Locale.US);
new SimpleDateFormat("EEE, d MMM yyyy HH:mm:ss zzz", Locale.US);
new SimpleDateFormat("EEE, dd MMM yyyy HH:mm:ss zzz", Locale.US);

如果将CEST修改为CET,而不是PST,则会出现相同的异常。任何指针将不胜感激。感谢。

3 个答案:

答案 0 :(得分:0)

它的工作......看到这个..

- 请更正inputDateString

inputDateparse()的拼写错误

它是一个工作Java代码... 修改它以适合您的Android使用....

public class CopyArray {

    public static void main(String[] args) {

        String inputDate = "Thu, 03 May 2012 14:00:00 CEST";
        SimpleDateFormat DATE_FORMATTER = new SimpleDateFormat(
                "EEE, d MMM yyyy HH:mm:ss z");
        try {
            Date parsedDate = DATE_FORMATTER.parse(inputDate);
            System.out.println(parsedDate);
        } catch (ParseException e) {

            e.printStackTrace();
        }

    }
}

答案 1 :(得分:0)

除了您实际调用变量inputDateString时尝试解析inputDate的小问题,我能够毫无例外地运行您的代码。

答案 2 :(得分:0)

它也适合我

package test.java;

import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;

public class DateTest {
    public static void main(String[] args) throws ParseException {
        String inputDate = "Thu, 03 May 2012 14:00:00 CEST";
        SimpleDateFormat DATE_FORMATTER = new SimpleDateFormat("EEE, d MMM yyyy HH:mm:ss z");
        Date parsedDate = DATE_FORMATTER.parse(inputDate);
        System.out.println("Date = " + parsedDate);
    }
}

我得到的输出是:

日期= 2012年5月3日星期三13:00:00 BST 2012