日期处理

       java中经常需要处理日期数据,也就是将Date类对象调转化为字符串进行存储、显示等。这里可以Date类的toString()方法,转化为字符串。但是这种方式将生成一个极其复杂的字符串类似于Wed Jan 06 09:35:41 CST 2010,并且想要把这个字符串在转化为Date对象比较麻烦。

      还好sun公司提供了java.text.DateFormat这个类,对日期进行格式化处理。包括DateFormat.format(Date)方法将一个Date对象转化为字符串,还有DateFormat.parse(String)方法将一个具有一定格式的字符串转化为Date对象。DateFormat是抽象类,具有多个工厂方法得到相应的实例。

DateFormat df=DateFormat.getDateInstance(int dateFormat);//日期格式化器 DateFormat df=DateFormat.getDateTimeInstance(int dateFormat,int timeFormat);//日期时间格式化器

      format是DateFormat类中定义的常量,包括SHORT、MEDIUM、LONG和FULL,这些常量用于控制日期的格式。

      通过DateFormat类就可以实现字符串和日期之间的相互转化,便于编程。在面的例子,是通过将两个字符串转化为Date对象,然后比较这两个日期的前后。

public static void main(String[] args) { DateFormat df=DateFormat.getDateInstance(DateFormat.MEDIUM); Date date1=null,date2=null; try { date1 = df.parse("2010-1-5"); date2 = df.parse("2010-1-6"); } catch (ParseException ex) { Logger.getLogger(LogHandler.class.getName()).log(Level.SEVERE, null, ex); } if(date1.before(date2)){ System.out.println(date1.toString()+"在"+date2.toString()+"之前"); }else System.out.println(date1.toString()+"在"+date2.toString()+"之后"); }

 

你可能感兴趣的:(编程,Date,String,null,sun,2010)