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