Моя мета полягає в тому, щоб отримати дату у форматі "{поточний рік} -01-01 00:00:00", тобто тільки значення року змінюється з часом. Який найкращий спосіб це зробити.
Використовуючи
SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-01-01 00:00:00");
String format = simpleDateFormat.format(new Date());
не здається чистим досить. Які інші варіанти у мене є?
Відповіді:
5 за відповідь № 1Ви повинні використовувати a Календар об'єкт. Набагато простіше керувати, і якщо вам потрібно дістатися до date
є методи для цього.
Calendar cal = Calendar.getInstance();
//Set to whatever date you want as default
cal.set(Calendar.YEAR, *year you want*);
4 для відповіді № 2
Ви можете використовувати a Calendar
об'єкт з наступним кодом:
Calendar cal = Calendar.getInstance();
cal.clear();
cal.set(Calendar.YEAR, year);
1 для відповіді № 3
Спробуйте скористатися таким календарем:
new GregorianCalendar(Locale.CANADA).get(Calendar.YEAR);
0 для відповіді № 4
Ви можете зробити щось схоже
Calendar cal = Calendar.getInstance();
cal.set(2011,1,1,0,0,0);
Потім ви можете змінити рік цього об'єкта
cal.set(Calendar.YEAR, [your-int-year]);
І надрукуйте їх у будь-який спосіб.
0 для відповіді № 5
Ви можете просто зробити:
Calendar today = Calendar.getInstance()
String date = today.get(Calendar.YEAR) + "-01-01 00:00:00"