Как я могу получить текущую дату в Android?
Я написал следующий код
Date d = new Date();
CharSequence s = DateFormat.format("MMMM d, yyyy ", d.getTime());
но спрашивает меня параметр, я хочу текущую дату в строковом формате,
как
28-Dec-2011
Так что я могу установить над TextView
,
объясните немного, если вы считаете, что что-то необходимо, я новичок в разработке Android.
21 ответ:
можно использовать
SimpleDateFormat
класс для форматирования даты в нужный формат.просто проверьте эту ссылку, где вы получите идею для вашего примера.
например:
String dateStr = "04/05/2010"; SimpleDateFormat curFormater = new SimpleDateFormat("dd/MM/yyyy"); Date dateObj = curFormater.parse(dateStr); SimpleDateFormat postFormater = new SimpleDateFormat("MMMM dd, yyyy"); String newDateStr = postFormater.format(dateObj);
обновление:
подробный пример здесь и здесь, Я бы предложил вам пройти через этот пример и понять концепцию класса SimpleDateFormat.
финал Решение:
Date c = Calendar.getInstance().getTime(); System.out.println("Current time => " + c); SimpleDateFormat df = new SimpleDateFormat("dd-MMM-yyyy"); String formattedDate = df.format(c);
его простой одну строку кода для получения текущей даты в этот гггг-ММ-ДД вы можете использовать свой формат, который вы хотите :
String date = new SimpleDateFormat("yyyy-MM-dd", Locale.getDefault()).format(new Date());
это не имеет ничего общего с android, поскольку он основан на java, поэтому вы можете использовать
private String getDateTime() { DateFormat dateFormat = new SimpleDateFormat("yyyy/MM/dd HH:mm:ss"); Date date = new Date(); return dateFormat.format(date); }
public String giveDate() { Calendar cal = Calendar.getInstance(); SimpleDateFormat sdf = new SimpleDateFormat("EEE, MMM d, yyyy"); return sdf.format(cal.getTime()); }
попробуйте это,
SimpleDateFormat timeStampFormat = new SimpleDateFormat("yyyyMMddHHmmssSS"); Date myDate = new Date(); String filename = timeStampFormat.format(myDate);
работает как шарм и преобразуется в строку в качестве бонуса ;)
SimpleDateFormat currentDate = new SimpleDateFormat("dd/MM/yyyy"); Date todayDate = new Date(); String thisDate = currentDate.format(todayDate);
Calendar cal = Calendar.getInstance(); Calendar dt = Calendar.getInstance(); dt.clear(); dt.set(cal.get(Calendar.YEAR), cal.get(Calendar.MONTH),cal.get(Calendar.DATE)); return dt.getTime();
String date = new SimpleDateFormat("yyyy-MM-dd").format(new Date());
/ / импортировать класс даты как java.утиль
SimpleDateFormat df = new SimpleDateFormat("dd-MMM-yyyy"); String date = df.format(Calendar.getInstance().getTime());
простая настройка решения Пареша:
Date date = Calendar.getInstance().getTime(); SimpleDateFormat df = new SimpleDateFormat("dd-MMM-yyyy"); String formattedDate = df.format(date);
вы можете использовать следующий код, чтобы получить дату в нужном формате.
String date = String.valueOf(android.text.format.DateFormat.format("dd-MM-yyyy", new java.util.Date()));
самый простой способ получить текущую дату в текущую локаль (локаль устройства!):
String currentDate = DateFormat.getDateInstance().format(Calendar.getInstance().getTime());
если вы хотите, чтобы дата в разных стилях использовать
getDateInstance(int style)
:DateFormat.getDateInstance(DateFormat.FULL).format(Calendar.getInstance().getTime());
другое стили:
DateFormat.LONG
,DateFormat.DATE_FIELD
,DateFormat.DAY_OF_YEAR_FIELD
и т. д. (используйте CTRL + пробел чтобы увидеть их все)Если вам тоже нужно время:
String currentDateTime = DateFormat.getDateTimeInstance(DateFormat.DEFAULT,DateFormat.LONG).format(Calendar.getInstance().getTime());
public static String getDateTime() { SimpleDateFormat simpleDateFormat = new SimpleDateFormat("MMMM dd, yyyy HH:mm:ss", Locale.getDefault()); Date date = new Date(); return simpleDateFormat.format(date); }
попробуйте с этой ссылкой кода это абсолютно правильный ответ для всех случаев на протяжении всей даты и времени. или настроить дату и время в соответствии с потребностями и требованиями приложения.
попробуйте по этой ссылке .попробуйте по этой ссылке
Я написал календарь приложение, с помощью CalendarView и это мой код:
CalendarView cal = (CalendarView) findViewById(R.id.calendar); cal.setDate(new Date().getTime());
поле "календарь" - это мой CalendarView. Импорт:
import android.widget.CalendarView; import java.util.Date;
у меня есть текущая дата без ошибок.
Это код, который я использовал:
Date date = new Date(); // to get the date SimpleDateFormat df = new SimpleDateFormat("dd-MM-yyyy"); // getting date in this format String formattedDate = df.format(date.getTime()); text.setText(formattedDate);
Я уже использовал этот:
Date What_Is_Today=Calendar.getInstance().getTime(); SimpleDateFormat Dateformat = new SimpleDateFormat("dd-MM-yyyy"); String Today=Dateformatf.format(What_Is_Today); Toast.makeText(this,Today,Toast.LENGTH_LONG).show();
сначала я получаю время, затем я объявил простой формат даты (чтобы получить дату, например: 19-6-2018) затем я использую формат, чтобы изменить дату на строку.
Date c = Calendar.getInstance().getTime(); System.out.println("Current time => " + c); SimpleDateFormat df = new SimpleDateFormat("dd-MMM-yyyy"); String formattedDate = df.format(c);
Это один из лучших ответов...
Это код I используется:
final Calendar c = Calendar.getInstance(); year = c.get(Calendar.YEAR); month = c.get(Calendar.MONTH); day = c.get(Calendar.DAY_OF_MONTH); // Set current date into textview tvDisplayDate.setText(new StringBuilder() .append(month + 1).append("-") // Month is 0 based, add 1 .append(day).append("-") .append(year).append(" Today is :" + thursday ) ); // Set current date into datepicker dpResult.init(year, month, day, null);