Подтвердить что ты не робот

SimpleDateFormat (шаблон String, локаль Locale), например, Locale.US для дат ASCII

Issue: Использование SimpleDateFormat напрямую без явного языкового стандарта Id: SimpleDateFormat

SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");

Почему " Чтобы получить локальное форматирование, используйте getDateInstance(), getDateTimeInstance() или getTimeInstance() или используйте новый SimpleDateFormat (String template, Locale locale), например, Locale.US для дат ASCIIсильная > " ошибка на этой строке.

http://developer.android.com/reference/java/text/SimpleDateFormat.html

4b9b3361

Ответ 1

Чтобы удалить предупреждение, просто добавьте Locale.getDefault() в качестве второго аргумента при создании экземпляра объекта формата даты. Например.

 SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss",
                    java.util.Locale.getDefault());

Ответ 2

Остерегайтесь getDefault, хотя, возможно, это не подходит для всех случаев использования, особенно для машинного чтения. Из docs:

Локаль по умолчанию не подходит для машиносчитываемого вывода. Лучший выбор там, как правило, Locale.US - этот локаль гарантированно будет доступен на всех устройствах, а тот факт, что он не имеет неожиданных особых случаев и часто используется (особенно для компьютерно-компьютерного общения), означает, что он, как правило, наиболее эффективный выбор.

Ответ 3

Это немое предупреждение. Если вы посмотрите на исходный код конструктора SimpleDateFormat, он получит локаль по умолчанию.

public SimpleDateFormat(String pattern) {
    this(pattern, Locale.getDefault());
}

Поэтому добавление его в ваш код является избыточным и излишне подробным. Locale.getDefault() почти всегда то, что вы хотите, поскольку это то, на что настроено пользовательское устройство. Если по какой-то причине вам нужно всегда возвращать, например, "понедельник", независимо от того, какой язык пользователя установлен, чем вы можете указать Locale.US, но это похоже на редкую ситуацию.

Лучшее, что нужно сделать, это отключить тупой осмотр.