Я написал следующий код
Date d = new Date();
CharSequence s = DateFormat.format("MMMM d, yyyy ", d.getTime());
Но спрашивает меня параметр, я хочу текущую дату в строковом формате,
лайк
28-Dec-2011
так что я могу установить TextView
,
объясни немного, если ты считаешь что-то необходимым, я новичок в разработке Android.
android
date
simpledateformat
android-date
Chatar Veer Suthar
источник
источник
DateFormat
класса было нормальным, когда этот вопрос был задан в 2011 году, этот класс и его подклассSimpleDateFormat
всегда были хлопотными и теперь уже давно устарели. Я рекомендую вам не использовать их и вместо этого заглянуть в java.time, современный Java-интерфейс даты и времени .Ответы:
Вы можете использовать
SimpleDateFormat
класс для форматирования даты в желаемом формате.Просто проверьте эту ссылку, где вы получите идею для вашего примера.
Например:
Обновить:
Подробный пример здесь , я бы посоветовал вам пройти этот пример и понять концепцию класса SimpleDateFormat.
Окончательное решение:
источник
java.util.Date
,java.util.Calendar
иjava.text.SimpleDateFormat
теперь унаследованные , вытеснены классами java.time, встроенными в Java 8 и более поздние версии . Смотрите Учебник по Oracle .Его простой однострочный код для получения текущей даты в этом формате гггг-мм-дд , вы можете использовать свой формат, который вы хотите:
источник
Это не имеет ничего общего с Android, так как это на основе Java, чтобы вы могли использовать
источник
источник
попробуй это,
источник
Сначала вам нужен экземпляр
источник
Работает как шарм и превращается в String в качестве бонуса;)
источник
// импортируем класс Date как java.util
источник
Приведенный ниже код отображает время и дату
источник
источник
Я даю современный ответ.
java.time и ThreeTenABP
Чтобы получить текущую дату:
Это дает вам
LocalDate
объект, который вы должны использовать для сохранения даты в вашей программе. АLocalDate
это дата без времени суток.Только когда вам нужно отобразить дату пользователю, отформатируйте ее в строку, подходящую для локали пользователя:
Когда я сегодня запускал этот фрагмент в английской локали США, вывод был:
Если хочешь короче, уточни
FormatStyle.MEDIUM
или дажеFormatStyle.SHORT
.DateTimeFormatter.ofLocalizedDate
использует язык форматирования по умолчанию, так что смысл в том, что он выдаст выходные данные, подходящие для этого языка, отличающиеся для разных языков.Если у вашего пользователя есть особые требования к формату вывода, используйте строку шаблона формата:
Я использую и рекомендую java.time, современный API даты и времени Java.
DateFormat
,SimpleDateFormat
,Date
ИCalendar
используется в вопросе и / или многие другие ответы, плохо разработаны и давно устарели. И с java.time гораздо приятнее работать.Вопрос: Могу ли я использовать java.time на Android?
Да, java.time прекрасно работает на старых и новых устройствах Android. Это просто требует как минимум Java 6 .
org.threeten.bp
подпакетов.связи
java.time
был впервые описан.java.time
в Java 6 и 7 (ThreeTen для JSR-310).источник
DateTimeUtils.toDate(yourLocalDateTime.atZone(ZoneId.systemDefault()).toInstant())
. При использовании встроенного в java.time:Date.from(yourLocalDateTime.atZone(ZoneId.systemDefault()).toInstant())
. Смотрите раздел Преобразование между java.time.LocalDateTime и java.util.Date . Есть авторитетный ответ от JodaStephen, а также ответ, показывающий использование backport .источник
28-Dec-2011
), которого нет в других ответах? В любом случае он все еще использует общеизвестно хлопотный и давно устаревшийSimpleDateFormat
класс. Пожалуйста, нам больше не нужны ответы, делающие это.источник
Простая настройка решения Пареша:
источник
источник
Вы можете использовать следующий код, чтобы получить дату в нужном вам формате.
источник
Это лучший ответ ...
источник
Самый простой способ получить текущую дату в текущей локали (локаль устройства!):
Если вы хотите использовать дату в разных стилях, используйте
getDateInstance(int style)
:Другие стили:
DateFormat.LONG
,DateFormat.DATE_FIELD
,DateFormat.DAY_OF_YEAR_FIELD
и т.д. (использованиеCTRL+Space , чтобы увидеть их все)Если вам нужно время тоже:
источник
источник
Попробуйте с помощью этой ссылки кода, это абсолютно правильный ответ для всех случаев в течение даты и времени. или настроить дату и время в соответствии с потребностями и требованиями приложения.
попробуйте с этой ссылкой. попробуйте с этой ссылкой
источник
Я написал приложение календаря, используя CalendarView, и это мой код:
Поле 'calendar' - это мой CalendarView. Импорт:
У меня есть текущая дата без ошибок.
источник
Это код, который я использовал:
источник
Я уже использовал это:
сначала я получаю время, затем я объявляю простой формат даты (чтобы получить дату вроде: 19-6-2018), затем я использую формат, чтобы изменить дату на строку.
источник
всего один строчный код, чтобы получить простой формат даты:
выходной: 18 мая-2020
выходной: 18 мая-2020 11:00:39
выходной: 11:00:39
Надеюсь, этого ответа достаточно, чтобы получить формат даты и времени ... :)
источник
SimpleDateFormat
иDateFormat
классы. По крайней мере, не в качестве первого варианта. И не без оговорок. Сегодня у нас намного лучше вjava.time
современном API даты и времени Java и егоDateTimeFormatter
. Да, вы можете использовать его на Android. Для более старых версий Android смотрите Как использовать ThreeTenABP в Android Project .Это код, который я использовал :
источник