Прописная буква в SimpleDateFormat - PullRequest
3 голосов
/ 16 февраля 2011

выполнение этого куска кода:

SimpleDateFormat sdfIn = new SimpleDateFormat("yyyy-MM-dd");
                            Date date = null;
                            try {
                                date = sdfIn.parse(value11);
                            } catch (ParseException e) {
                                // TODO Auto-generated catch block
                                e.printStackTrace();
                            }

                            SimpleDateFormat sdfOut = new SimpleDateFormat("MMM d, yyyy");

                            System.out.println(sdfOut.format( date ));

Я получаю этот вывод nov 23, 2005 вместо Nov 23, 2005, что было бы намного лучше.
Кто-нибудь знает, как это изменить ?? Заранее спасибо

1 Ответ

10 голосов
/ 16 февраля 2011

Точные строки, которые генерируются, зависят от локали, в которой вы находитесь. Если вы просто используете

new SimpleDateFormat("MMM d, yyyy");

тогда будет использоваться системный язык по умолчанию. Ваш стандарт по умолчанию, вероятно, отображает месяц как nov, а не Nov.

если вы хотите использовать конкретную локаль, передайте ее конструктору, например,

new SimpleDateFormat("MMM d, yyyy", Locale.US);
...