得到时间的日期: static DateFormat getInstance()
得到时间的具体的日期static DateFormat getDateTimeInstance()
具体的用法如下:
import java.text.DateFormat;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
public class LearnDateFormat {
public static void main(String[] args) {
DateFormat df1 = null;
df1 = DateFormat.getDateInstance();
System.out.println("DATE:"+df1.format(new Date())); //得到日期
DateFormat df2 = null;
df2 = DateFormat.getDateTimeInstance();
System.out.println("DATE:"+df2.format(new Date())); //得到日期和时间
}
}
最后的输出结果为:
DATE:2014-5-13 16:26:12
DATE:2014-5-13
通过输出,就可以查出getDateInstance()和getDateTimeInstance()方法的区别了。一个只能够得到当前的日期,而另一个可以得到当前的精确的时间。
SimpleDateFormat
在实际的编码过程中,DateFormat并不经常用,用的更多的是SimpleDateFormat。此类是DateFormat的子类。此类的主要作用是
完成日期的显示格式化的。例如,在开发中将一种日期个是转化成另外一种。同时该类还从父类中继承了parse()的方法,主要是用来将一个字符串转化为一个日期类型。如下:
原始格式:2014-05-1311:15:30.478
转换格式为:2014年5月13日 11点15分30秒478毫秒。
在SimpleDateFormat中,有几个比较重要且经常使用的方法。
构造方法: SimpleDateFormat(String pattern)
在使用SimpleDateFormat类的时候,在构造方法中必须传入要匹配的模板,否则无法完成日期的转化。
转换: Date parse(String source)throws ParseException (将String转换为Date)
格式化:String Format(Date date) (将Date转化为指定格式的字符串)
具体的使用方法为:
import java.text.DateFormat;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
public class LearnDateFormat {
public static void main(String[] args) {
String datestr = "2014/5/13 14:22:30.456";//带转化的字符串
String pattern1= "yyyy/MM/dd HH:mm:ss.SSS";
//设定需要匹配模式,将datestr转换hauntedDate,这种格式一定要与datestr的格式一样,否否则无法转化
SimpleDateFormat sdf1 = new SimpleDateFormat(pattern1);
Date date = null;
try {
date = sdf1.parse(datestr); //将datestr转化为指定的格式
} catch (ParseException e) {
//假设pattern不是之前的格式,而是 "yyyy-MM-dd HH:mm:ss.SS"由于无法转化,则会报错
e.printStackTrace();
}
String pattern2 = "yyyy年MM月dd日HH时mm分ss秒SS毫秒";
//将date格式化为String,形式为2014年5月13好14时22分30秒456毫秒
SimpleDateFormat sdf2 = new SimpleDateFormat(pattern2);
String datestr2 = sdf2.format(date);
System.out.println(datestr2);
}
}
最后的输出结果为:
2014年05月13日14时22分30秒456毫秒
pattern1的格式必须和需要转化的日期的字符串保持一致,否则就不能将datestr转化为Date类型的。记住这一点非常的重要。
parse()方法主要就是用于将datestr转化为Date类型,而转化所采用的匹配原则就是SimpleDateFormat定义的匹配原则
format就是将一个Date类型的对象转化为指定格式的string类型的变量,如在实例中将Date转化为yyyy年MM月dd日HH时mm分ss秒SS毫秒的格式,此格式也需要使用匹配规则来进行定义。
Calendar