学习笔记,仅供参考,有错必纠
DateFormat类
DateFormat类是java.text包下的一个类,使用该类时需要导包。
DateFormat 是日期/时间格式化子类的抽象类,它以与语言无关的方式格式化并解析日期或时间。日期/时间格式化子类(如 SimpleDateFormat)允许进行格式化(也就是日期 -> 文本)、解析(文本-> 日期)和标准化。
SimpleDateFormat类
SimpleDateFormat类是DateFormat类的子类。
构造方法
public SimpleDateFormat()
public SimpleDateFormat(String pattern)
- 举个例子
package com.guiyang.restudy3;
import java.text.SimpleDateFormat;
import java.util.Date;
public class D7SimpleDF {
public static void main(String[] args) {
Date d = new Date(); //获取当前时间对象
SimpleDateFormat sdf = new SimpleDateFormat(); //创建日期格式化类对象
System.out.println(sdf.format(d));
}
}
输出:
20-6-27 上午9:00
成员方法
public final String format(Date date)
//继承自DateFormat类,将一个 Date 格式化为日期/时间字符串。
public Date parse(String source)
//继承自DateFormat类,从给定字符串的开始解析文本,以生成一个日期。该方法不使用给定字符串的整个文本。
- 日期和时间模式
字母 | 日期或时间元素 | 表示 | 示例 |
| Era 标志符 | Text | |
| 年 | Year | |
| 年中的月份 | Month | |
| 年中的周数 | Number | |
| 月份中的周数 | Number | |
| 年中的天数 | Number | |
| 月份中的天数 | Number | |
| 月份中的星期 | Number | |
| 星期中的天数 | Text | |
| Am/pm 标记 | Text | |
| 一天中的小时数(0-23) | Number | |
| 一天中的小时数(1-24) | Number | |
| am/pm 中的小时数(0-11) | Number | |
| am/pm 中的小时数(1-12) | Number | |
| 小时中的分钟数 | Number | |
| 分钟中的秒数 | Number | |
| 毫秒数 | Number | |
| 时区 | | |
| 时区 | |
- 举个例子
package com.guiyang.restudy3;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
public class D7SimpleDF {
public static void main(String[] args) throws ParseException {
Demo1();
String str = "2020年01月01日";
SimpleDateFormat sdf = new SimpleDateFormat("yyyy年MM月dd日");
Date d = sdf.parse(str); //将时间字符串转换成日期对象
System.out.println(d);
}
private static void Demo1() {
Date d = new Date(); //获取当前时间对象
SimpleDateFormat sdf = new SimpleDateFormat("yyyy年MM月dd日"); //创建日期格式化类对象
System.out.println(sdf.format(d)); //88-6-6 下午9:31
}
}
注意,因为用parse方法将字符串转换为日期时,可能会出现异常情况(比如将"数学分析"转换为日期),所以,我们需要抛出异常。
输出:
2020年06月27日
Wed Jan 01 00:00:00 CST 2020