国际化 之Dateformat

Format 是一个用于格式化语言环境敏感的信息(如日期、消息和数字)的抽象基类。 有三个子类分别为:DateFormat, MessageFormat, NumberFormat
所有的子类都实现了了Format中声明的三个方法。但是注意:formatToCharacterIterator 不是抽象方法。
format(Object obj, StringBuffer toAppendTo, FieldPosition pos)
formatToCharacterIterator(Object obj)
parseObject(String source, ParsePosition pos)

DateFormat 类虽然有 DateFormat() 构造方法但是不能 构造对象,因为该构造方法为protected类型。只能通过以下方式构造
DateFormat df =DateFormat.getDateInstance();
 
package i18n;

import java.text.DateFormat;
import java.text.Format;
import java.util.Date;
import java.util.Locale;

public class FormaterTest {

   public static void testDateFormat(){
     //output=2009年12月10日 星期四
     //Format format =DateFormat.getDateInstance(DateFormat.FULL);
    Locale currlocale = Locale.getDefault();
    Locale enlocal =    Locale.ENGLISH; //返回英国
    
    Format format =DateFormat.getDateInstance(DateFormat.FULL);
    Format format2 =DateFormat.getDateInstance();
    Format format3 =DateFormat.getDateInstance(DateFormat.MEDIUM, enlocal);
    Format format4 =DateFormat.getDateTimeInstance();
    Format format5 =DateFormat.getDateTimeInstance(DateFormat.FULL,DateFormat.FULL);
    
    String output =format.format( new Date());
    String output2 =format2.format( new Date());
    String output3 =format3.format( new Date());
    String output4 = format4.format( new Date());
    String output5 = format4.format( new Date());
    
    System.out.println(output);
    System.out.println(output2);
    System.out.println(output3);
    System.out.println(output4);
    System.out.println(output5);
  }    
    
   public static void main(String[] args) {
    
    testDateFormat();

  }

}
 
 
输出结果:
2009年12月10日 星期四
2009-12-10
Dec 10, 2009
2009-12-10 21:57:15
2009-12-10 21:57:15
 
另外还有其他方法。比如date =df.parse("2009-10-11");可以由string 转化到date。等等
 

你可能感兴趣的:(职场,DateFormat,国际化,休闲)