Java tutorial
java.text.BreakIterator java.text.Collator java.text.DateFormat java.text.NumberFormat java.text.DateFormatSymbols java.text.DecimalFormatSymbol import java.text.DateFormat; import java.text.SimpleDateFormat; import java.text.spi.DateFormatProvider; import java.util.Locale; import java.text.DateFormat; import java.util.Date; import java.util.Locale; public class AntarcticaLocaleDemo { public static void main(String [] args) { Date now = new Date(); DateFormat defaultFormat = DateFormat.getDateTimeInstance(); String defaultString = defaultFormat.format (now); System.out.println ("Default : " + defaultString); DateFormat antarcticaFormat = DateFormat.getDateTimeInstance ( DateFormat.FULL, DateFormat.FULL, new Locale ("en", "AQ")); String antarcticaString = antarcticaFormat.format (now); System.out.println ("Antarctica: " + antarcticaString); } } class DateFormatProviderImpl extends DateFormatProvider { private Locale antarctica = new Locale ("en", "AQ"); public Locale[] getAvailableLocales() { return new Locale [] {antarctica}; } public DateFormat getTimeInstance(int style, Locale locale) { if (locale.equals(antarctica)) { return new SimpleDateFormat("HH.mm.ss"); } return null; } public DateFormat getDateTimeInstance(int dateStyle, Locale locale) { if (locale.equals(antarctica)) { return new SimpleDateFormat("yyyy~MM~dd HH.mm.ss"); } return null; } public DateFormat getDateTimeInstance(int dateStyle, int timeStyle, Locale locale) { if (locale.equals(antarctica)) { return new SimpleDateFormat("yyyy~MM~dd HH.mm.ss"); } return null; } @Override public DateFormat getDateInstance(int style, Locale locale) { if (locale.equals(antarctica)) { return new SimpleDateFormat("yyyy~MM~dd HH.mm.ss"); } return null; } } //Reference: //Java 6 New Features: A Tutorial //by Budi Kurniawan //Brainy Software Corp. 2006 //Chapter 4 - Networking //# ISBN-10: 0975212885 //# ISBN-13: 978-0975212882