一,Date类
1,Date类 对象的创建:
Date dateNow = new Date(); //创建当前时间的日期对象。Date datewhen = new Date(long millis);//创建从1970-1-1 00:00:00向后millis 毫秒的日期。2,Date类的主要方法。
int compareTo(Date anotherDate) //相等返回0,在anotherDate之前返回负数,在anotherDate之后返回正数。long getTime() //返回从1970.1.1 00:00:00 至该日期类对象的毫秒数。void setTime(long millis) //设置该日期对象为从1970.1.1 00:00:00向后millis毫秒的时刻。
二,DateFormat类
DateFormat类主要用于将Date 类对象 转换成多种格式的日期字符串。
1,主要字段
SHORT LONG FULL2,DateFormat类 对象的创建。(通过其众多静态方法)
DateFormat df = DateFormat.getInstance();// 12-12-6 下午4:02DateFormat df = DateFormat.getDateTimeInstance();// 2012-12-6 15:40:57DateFormat df = DateFormat.getDateInstance();// 2012-12-6DateFormat df = DateFormat.getTimeInstance();// 18:05:15DateFormat df = DateFormat.getDateInstance(DateFormat.SHORT);// 12-12-6DateFormat df = DateFormat.getTimeInstance(DateFormat.SHORT);// 下午6:05DateFormat df = DateFormat.getDateInstance(DateFormat.LONG);// 2012年12月6日DateFormat df = DateFormat.getTimeInstance(DateFormat.LONG);// 下午06时05分15秒DateFormat df = DateFormat.getDateInstance(DateFormat.FULL);// 2012年12月6日 星期四DateFormat df = DateFormat.getTimeInstance(DateFormat.FULL);//下午06时05分15秒 CSTDateFormat df = DateFormat.getDateTimeInstance(DateFormat.FULL, DateFormat.SHORT);// 2012年12月6日 星期四 下午4:353,DateFormat 类的主要方法。
String format(Date date) //将一个Date对象格式化为 日期 或者 时间 或者 日期时间 的 字符串。(格式由自身创建时确定)2 中的 获得DateFormat 对象的 众多静态方法。Date parse(String source) //将该字符串解析成 Date 类对象返回。无法解析时抛出ParseException异常用法示例:public static void show0() { Date date = new Date(); DateFormat df = DateFormat.getInstance();// 12-12-6 下午4:02 String str = df.format(date); System.out.println(str); }
三,SimpleDateFormat类。
DateFormat类主要用于将Date 类对象 转换成 自定义 格式的日期字符串。
1,SimpleDateFormat类 对象的创建。
DateFormat df = new SimpleDateFormat("MM月-dd日----yyyy年");// 12月-06日----2012年2,SimpleDateFormat类 对象的主要方法
String format(Date date)//将一个Date对象格式化为 日期 或者 时间 或者 日期时间 的 字符串。(格式由自身创建时确定)Date parse(String source) //将该字符串解析成 Date 类对象返回。无法解析时抛出ParseException异常。
四,日期和毫秒数的相互转换。
1,日期转换为毫秒数。
可以使用Date 对象的long getTime()方法。2,毫秒数转换为日期。
方法一:new Date(long millis);//通过Date构造方法转换方法二:使用Date对象的 Date setTime(long millis);方法设置。
程序:
package DataDemo;
import java.text.DateFormat;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
public class DateDemo2 {
/**
* 主要涉及的类: Date(日期类) DateFormat(日期格式器类) SimpleDateFormat(自定义日期格式器类)
*
*
* getInstance() 默认为 : 2012-12-6 15:40:57 getDateInstance() 默认为 : 2012-12-6
* getDateTimeInstance() 默认为 : 2012-12-6 15:40:57
*
*
* Date: SHORT : 2012-12-6 LONG : 2012年12月6日 FULL : 2012年12月6日 星期四
*
* Time: SHORT : 下午4:04 LONG : 下午04时05分15秒 FULL : 下午04时06分33秒 CST
*
* 时间格式器的四种获取方法: 1, DateFormat df = DateFormat.getInstance(); 2, DateFormat
* df = DateFormat.getDateInstance(); 3, DateFormat df =
* DateFormat.getDateTimeInstance(); 4, DateFormat df = new
* SimpleDateFormat("自定义格式"); 将Date类 对象 转换成格式化字符串 String str =
* df.format(Date date); 将df格式的字符串日期 转换成Date类 日期。无法解析时 ,抛ParseException异常。
* Date date2 = df.parse(str);
*
* @throws ParseException
*
* 将 日期对象 变为毫秒数(从1970 年 1 月 1 日 00:00:00至日期对象):date.getTime()
*
* 将 毫秒数 变为 日期类对象。 new Date(long millis);
*
*/
public static void main(String[] args) throws ParseException {
show0();
show_0();
show1();
show_1();
show2();
show_2();
show3();
show_3();
show4();
show_4();
show_9();
// Date date = new Date();
// System.out.println("date : "+date);
// long mil = dateToMillis(date);
// System.out.println(mil);
// Date date2 = millisToDate(mil);
// System.out.println("date2 : "+date2);
}
public static Date millisToDate(long mil) {
return new Date(mil);//通过构造函数转换。
}
public static Date millisToDate2(long mil) {
Date date = new Date();
date.setTime(mil);
return date;
}
// 将日期转换成毫秒数。
public static long dateToMillis(Date date) {
return date.getTime();
}
public static void show() throws ParseException {
Date date = new Date();
System.out.println("date :" + date);
DateFormat df = new SimpleDateFormat("MM月-dd日----yyyy年");// 12月-06日----2012年
// 将日期转换成df格式的字符串。
String str = df.format(date);
System.out.println("str : " + str);
// 将df格式的字符串日期 转换成Date类 日期。
Date date2 = df.parse(str);
System.out.println("date2: " + date2);
}
public static void show_9() {
Date date = new Date();
DateFormat df = DateFormat.getDateTimeInstance(DateFormat.FULL, DateFormat.SHORT);// 2012年12月6日 星期四 下午4:35
String str = df.format(date);
System.out.println(str);
}
public static void show_4() {
Date date = new Date();
DateFormat df = DateFormat.getTimeInstance(DateFormat.FULL);//下午06时05分15秒 CST
String str = df.format(date);
System.out.println(str);
}
public static void show4() {
Date date = new Date();
DateFormat df = DateFormat.getDateInstance(DateFormat.FULL);// 2012年12月6日 星期四
String str = df.format(date);
System.out.println(str);
}
public static void show_3() {
Date date = new Date();
DateFormat df = DateFormat.getTimeInstance(DateFormat.LONG);// 下午06时05分15秒
String str = df.format(date);
System.out.println(str);
}
public static void show3() {
Date date = new Date();
DateFormat df = DateFormat.getDateInstance(DateFormat.LONG);// 2012年12月6日
String str = df.format(date);
System.out.println(str);
}
public static void show_2() {
Date date = new Date();
DateFormat df = DateFormat.getTimeInstance(DateFormat.SHORT);// 下午6:05
String str = df.format(date);
System.out.println(str);
}
public static void show2() {
Date date = new Date();
DateFormat df = DateFormat.getDateInstance(DateFormat.SHORT);// 12-12-6
String str = df.format(date);
System.out.println(str);
}
public static void show_1() {
Date date = new Date();
DateFormat df = DateFormat.getTimeInstance();// 18:05:15
String str = df.format(date);
System.out.println(str);
}
public static void show1() {
Date date = new Date();
DateFormat df = DateFormat.getDateInstance();// 2012-12-6
String str = df.format(date);
System.out.println(str);
}
public static void show_0() {
Date date = new Date();
DateFormat df = DateFormat.getDateTimeInstance();// 2012-12-6 15:40:57
String str = df.format(date);
System.out.println(str);
}
public static void show0() {
Date date = new Date();
DateFormat df = DateFormat.getInstance();// 12-12-6 下午4:02
String str = df.format(date);
System.out.println(str);
}
}