/ / Дата в java з тільки рік - java, дата, формат

Дата в java з тільки рік - java, дата, формат

Моя мета полягає в тому, щоб отримати дату у форматі "{поточний рік} -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"