Вы не указываете, является ли исходное значение (21.10.2009) объектом даты или строкой, я собираюсь предположить, что это на самом деле строка, поэтому сначала нужно проанализировать строку и преобразовать его в объект даты, используя класс SimpleDateFormatter
import java.text.SimpleDateFormatter;
SimpleDateFormatter sdf = new SimpleDateFormatter("MM/dd/yyyy");
Date d = sdf.parse("10/21/2009");
Как только у вас есть объект даты, вы можете просто вызвать toString (), чтобы получить нужную вам строку, или создать другой объект SimpleDateFormatter с нужным шаблоном (проверьте javadocs), а затем вызвать format () .
Есть несколько вещей, о которых вы должны знать относительно классов DateFormatter, доступных в JDK
- Если строка не может быть проанализирована, метод синтаксического анализа вызовет исключение, вам необходимо соответствующим образом обработать исключение
- Классы форматирования даты, доступные в JDK, не являются поточно-безопасными . Не создавайте личную / защищенную / общедоступную переменную-член этих типов, вместо этого создайте средства форматирования / анализаторы в тех методах, где они вам нужны