类 SimpleDateFormat
是一个以与语言环境有关的方式来格式化和解析日期的具体类。
它允许进行格式化(日期 -> 文本)、解析(文本 -> 日期)和规范化
java.lang.Object
——java.text.Format
————java.text.DateFormat
——————java.text.SimpleDateFormat
构造 public SimpleDateFormat() 用默认的模式和默认语言环境的日期格式符号构造 SimpleDateFormat。 注:此构造方法可能不支持所有语言环境。要覆盖所有地区,请使用 DateFormat 类中的工厂方法。 public SimpleDateFormat(String pattern) 用给定的模式和默认语言环境的日期格式符号构造 SimpleDateFormat。 注:此构造方法可能不支持所有语言环境。要覆盖所有语言环境,请使用 DateFormat 类中的工厂方法。 参数: pattern - 描述日期和时间格式的模式
在日期和时间模式字符串中, 未加引号的字母 'A' 到 'Z' 和 'a' 到 'z' 被解释为模式字母,用来表示日期或时间字符串元素。 文本可以使用单引号 (') 引起来,以免进行解释。"''" 表示单引号。所有其他字符均不解释 只是在格式化时将它们简单复制到输出字符串,或者在解析时与输入字符串进行匹配。
类 DateFormat
是日期/时间格式化子类的抽象类,它以与语言无关的方式格式化并解析日期或时间。 是抽象类,所以使用其子类SimpleDateFormat
构造
protected DateFormat()
创建一个新的 DateFormat。
方法 public final String format(Date date) 将一个 Date 格式化为日期/时间字符串。 public Date parse(String source) 从给定字符串的开始解析文本,以生成一个日期。 参数: source - 一个 String,应从其开始处进行解析。 返回: 解析字符串得到的 Date。
public class i {
/**
* @param args
* @throws ParseException
*/
public static void main(String[] args) throws ParseException {
// TODO Auto-generated method stub
//DateFormat df = new DateFormat();//DateFormat是抽象类,不允许实例化
DateFormat df1 = new SimpleDateFormat();
DateFormat df2 = DateFormat.getDateInstance();
//相当于父类引用指向子类对象,右边的方法返回一个子类对象
/*public static final DateFormat getInstance()
获取为日期和时间使用 SHORT 风格的默认日期/时间格式器。 */
System.out.println(df1);//java.text.SimpleDateFormat@b5341f2a
System.out.println(df2);//java.text.SimpleDateFormat@ef7951d7
Date d = new Date();//获取当前时间对象
SimpleDateFormat sdf = new SimpleDateFormat();//创建日期格式化类对象
System.out.println(d);//88-5-7 下午2:08
System.out.println(sdf.format(d)); //88-6-6 下午9:31
Date d1 = new Date(); //获取当前时间对象
SimpleDateFormat sdf3 = new SimpleDateFormat("yyyy/MM/dd HH:mm:ss");
//创建日期格式化类对象 y/M/d H:m:s
System.out.println(sdf3.format(d)); //将日期对象转换为字符2088/05/07 14:20:40
//将时间字符串转换成日期对象
String str = "2000年08月08日 08:08:08";
SimpleDateFormat sdf4 = new SimpleDateFormat("yyyy年MM月dd日 HH:mm:ss");
Date d2 = sdf4.parse(str);//将时间字符串转换成日期对象
System.out.println(d);
}
}
需要导入包
import java.text.DateFormat;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;