String和Date之间的转换。。
i.Time类是Date的子类:Time表示时间,Date是日期。
ii.Date和字符串之间的转换需要用到Format。 其中SimpleDateFormat继承自DateFormat继承自Format。
iii.SimpleDateFormat("yyyy-MM--dd")的构造函数,定义了时间的输出格式。ormat(Date date),将时间转换为String字符串。parse(String "1912-12-13")将字符串转换成Date对象。
iii其中DateFormat.getDateInstance(int style),得到相应格式的DateFormat.对象,其中,style为DateFormat.的静态成员变量:MEDIUM
FULL
SHORT
对应的格式分别为:1912-12-13
2007年1月18日 星期四
12-12-13
package com.ben.test;
import java.text.DateFormat;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
public class StringOrDate {
public static String dateToString(Date date, String type) {
String str = null;
DateFormat format = new SimpleDateFormat("yyyy-MM-dd");
if (type.equals("SHORT")) {
// 07-1-18
format = DateFormat.getDateInstance(DateFormat.SHORT);
str = format.format(date);
} else if (type.equals("MEDIUM")) {
// 2007-1-18
format = DateFormat.getDateInstance(DateFormat.MEDIUM);
str = format.format(date);
} else if (type.equals("FULL")) {
// 2007年1月18日 星期四
format = DateFormat.getDateInstance(DateFormat.FULL);
str = format.format(date);
}
return str;
}
public static Date stringToDate(String str) {
DateFormat format = new SimpleDateFormat("yyyy-MM-dd");
Date date = null;
try {
// Fri Feb 24 00:00:00 CST 2012
date = format.parse(str);
} catch (ParseException e) {
e.printStackTrace();
}
// 2012-02-24
date = java.sql.Date.valueOf(str);
return date;
}
public static void main(String[] args) {
Date date = new Date();
System.out.println(StringOrDate.dateToString(date, "FULL"));
String str = "2012-2-24";
System.out.println(StringOrDate.stringToDate(str));
}
}