DateFormat类: 提供了许多类方法,用于根据默认或给定的区域设置和多个格式化样式获取默认的日期/时间格式化程序。
简单说就是可以改变日期的风格
例如:西方的日期是日月年, 用这个我们就可以变成年月日了…
它是一个抽象类
public class abstract DateFormat extends Format
例子:
import java.text.DateFormat;
import java.util.Date;
public class Demo {
public static void main(String[] args) {
Date date = new Date();
DateFormat dateFormat = DateFormat.getDateInstance();
System.out.println(dateFormat.format(date));
}
}
运行结果
这里没有只有年月日,没有星期时间…
在getDateInstance();里面加入: DateFormat.FULL 可以获取星期
例子:
DateFormat dateFormat = DateFormat.getDateInstance();
运行结果:
在getDateTimeInstance()
方法里面加入: 两个DateFormat.FULL,可以获取星期与时间
也可以加入两个DateFormat.LONG, 获取时间
例子:
DateFormat dateFormat = DateFormat.getDateTimeInstance(DateFormat.LONG, DateFormat.LONG);
运行结果:
将日期格式的字符串转换成日期对象使用parse()
方法, 要抛出异常, 因为有些人可以不按要求输入…
例子:
这里直接采用抛出
import java.text.DateFormat;
import java.text.ParseException;
public class Demo {
public static void main(String[] args) throws ParseException {
String str_date = "2018年10月2日";
DateFormat dateFormat = DateFormat.getDateInstance(DateFormat.LONG);
System.out.println(dateFormat.parse(str_date));
}
}
也可以通过 new SimpleDateFormat(String pattern)
DateFormat 的子类 指定格式
例子:
import java.text.DateFormat;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
public class Demo {
public static void main(String[] args) throws ParseException {
String str_date = "2018年10月2日";
DateFormat dateFormat = DateFormat.getDateInstance(DateFormat.LONG);
Date date = dateFormat.parse(str_date);
DateFormat simpleDateFormat = new SimpleDateFormat("yyyy年MM月dd日");
System.out.println(simpleDateFormat.format(date));
}
}
输出结果:
SimpleDateFormat类的日期和时间模式(具体看API)