Как получить выбранный пользователем формат даты в Android?

Я работаю над проблемой формата даты, выбранной пользователями в Android Phone. Я прошел почти много вопросов и ответов на stackoverlow и havent получил прекрасный ответ. Например: – Я выбрал dateformat в телефоне – «Сб, 31 декабря 2011». Но когда я использовал как основанный вопрос, ответил на stackoverflow: –

DateFormat df = android.text.format.DateFormat.getDateFormat(context.getApplicationContext()); tv.setText(df.format(date)); 

Выше код возвращает мне формат 06/08/2011 (мм / дд / гггг). Но посмотрите формат даты, который я выбрал на телефоне. Как я могу получить точный формат?

    В приложении, которое я сейчас разрабатываю, я использую следующее, которое, я считаю, будет делать то, что вам нужно

     final String format = Settings.System.getString(getContentResolver(), Settings.System.DATE_FORMAT); if (TextUtils.isEmpty(format)) { dateFormat = android.text.format.DateFormat.getMediumDateFormat(getApplicationContext()); } else { dateFormat = new SimpleDateFormat(format); } 

    DateFormat.getDateFormat работает так, как ожидалось. Он возвращает один из трех возможных форматов:

    1. MM/DD/YYYY
    2. DD/MM/YYYY
    3. YYYY/MM/DD

    Я не уверен, как вы настроили формат «Sat, 31 Dec 2011» , но, насколько я знаю, Android позволяет установить только один из трех указанных форматов (Настройки -> Дата и время -> Выбрать формат даты).

    введите описание изображения здесь

    Попробуй это

     Date inDate = inFormat.parse(in); DateFormat outFormat = android.text.format.DateFormat.getDateFormat(context); out=outFormat.format(inDate); 
    Давайте будем гением компьютера.