将字符串解析为Date而不使用语言环境

时间:2014-11-23 21:07:51

标签: java string date converter

我需要在Java中解析String to Date。有问题的情况是使用完整日期模式并且它取决于特定的区域设置(我以前不知道)

例如,使用模式“EEEE dd MMMM yyyy”两个可能的输入是:

英语=“2014年11月10日星期五”

Spanish =“Viernes 10 Noviembre 2014”

是否可以将上述输入转换为Date对象而不知道源语言环境?

感谢。

1 个答案:

答案 0 :(得分:0)

我尝试使用MadProgrammer解决方案,它可以工作:

        String dateInString = "Friday 10 November 2014";
        //String dateInString = "Viernes 10 Noviembre 2014";
        Locale localeList[] = DateFormat.getAvailableLocales();

        Date date = null;

        for (Locale l : localeList) {
            try {

                SimpleDateFormat formatter = new SimpleDateFormat("EEEE dd MMMM yyyy", l);

                date = formatter.parse(dateInString);
                System.out.println("Trying with locale: " + l.toString());
                break;
            } catch (ParseException e) {
            }

        }

由于