java.text.SimpleDateFormat
在java中我们一般用text包中的SimpleDateFormat来格式化时间,这个类在对时间的处理上可以算是专业选手。向上追根,SimpleDateFormat类继承于DateFormat,DateFormat继承于Format。Format提供了很多对信息,数字,日期等等内容的格式化,我们这次主要看一下SimpleDateFormat的格式化方法。另外不能忽视的是,SimpleDateFormat除了格式化,还具有解析一个String变为Date的功能。
(一) 实例化
SimpleDateFormat实例化可以用自己或者父类DateFormat。参数的选择上也有的一说,如果无参数的话就是默认的语言环境、日期格式和默认的模式来创建一个默认的格式化对象。
参数选择第一个是格式模式的String字串,第二个是语言环境,根据你的地理位置来判断,如果我们在默认不填的时候,一般默认为中文,最直接的影响就是在月份星期的时候会显示中文,为了能够得到像(Dec,Friday)这种英文的写法有必要的时候可以设置一下。
//用父类DateFormat实例化
DateFormat df = new SimpleDateFormat();
//默认环境实例化
SimpleDateFormat sdf = new SimpleDateFormat();
//用指定的模式来实例化
String dateformat = "yyyy-MM-dd";
SimpleDateFormat sdf = new SimpleDateFormat(dateformat);
//用指定的模式和指定的语言环境来实例化
SimpleDateFormat sdf = new SimpleDateFormat(dateformat,Locale.US);
(二) 模式
模式就是一种你自己指定的格式,在格式化数字、信息和日期等的时候都要用到。能够格式日期的类有很多,JDK1.5之后有了个功能很强大的Formatter类能够格式几乎所有的数据。但是毕竟术业有专攻,SimpleDateFormat是专门用来格式化日期的类,SimpleDateFormat对一些地区语言的习惯书写和很复杂的东西的处理优于其他类。