あなたはこのようなことを試すことができます
@Test
public void formatDate() {
Date today = new Date();
SimpleDateFormat fourDigitsYearOnlyFormat = new SimpleDateFormat("yyyy");
FieldPosition yearPosition = new FieldPosition(DateFormat.YEAR_FIELD);
DateFormat dateInstanceUK = DateFormat.getDateInstance(DateFormat.SHORT,
Locale.UK);
StringBuffer sbUK = new StringBuffer();
dateInstanceUK.format(today, sbUK, yearPosition);
sbUK.replace(yearPosition.getBeginIndex(), yearPosition.getEndIndex(),
fourDigitsYearOnlyFormat.format(today));
System.out.println(sbUK.toString());
DateFormat dateInstanceUS = DateFormat.getDateInstance(DateFormat.SHORT,
Locale.US);
StringBuffer sbUS = new StringBuffer();
dateInstanceUS.format(today, sbUS, yearPosition);
sbUS.replace(yearPosition.getBeginIndex(), yearPosition.getEndIndex(),
fourDigitsYearOnlyFormat.format(today));
System.out.println(sbUS.toString());
}
基本的に、スタイルDateFormat#SHORTを使用して日付をフォーマットし、 FieldPositionオブジェクトを使用して年の位置をキャッチします。その後、年を 4 桁の形式に置き換えます。
出力は次のとおりです。
13/11/2013
11/13/2013
編集
あらゆるパターンで使用
StringBuffer sb = new StringBuffer();
DateFormat dateInstance = new SimpleDateFormat("yy-MM-dd");
System.out.println(dateInstance.format(today));
dateInstance.format(today, sb, yearPosition);
sb.replace(yearPosition.getBeginIndex(), yearPosition.getEndIndex(),
fourDigitsYearOnlyFormat.format(today));
System.out.println(sb.toString());
出力は次のとおりです。
13-11-13
2013-11-13