经常用时间这玩意 但忘了写:我们经常用 Date来定义时间,但我们也要去解析 和 自定义格式他:【2种:】本次基于Date讲解,其他的什么Calendar 啥的 自己去研究:1. 解析转换时间【Date】:
DateFormat :
它支持,样式和模式,但是样式是内定的,你不能自定义:
样式:
1.DateFormat.SHORT 例如:15/2/15
2.DateFormat.MEDIUM例如:Der 2,2020
3.DateFormat.LONG 例如:December 2 ,2021
4.DateFormat.FULL例如: Friday,Decembr 2 ,2021
你得要先有样式,才能去解析时间 然后返回字符串类型的数字, 用静态方法 :
| |
他还有模式啊: 不止是 getDateInstance 还可以 是 时间 、 日期时间 还可以指定时区....
去获取一个样式,然后用静态方法调用他的 format 或 parse 应该明白吧? 下面例子:
import java.text.DateFormat;
import java.text.ParseException;
import java.util.Date;
public class DateForm {
public static void main(String[] args) {
DateFormat shor = DateFormat.getDateInstance(DateFormat.SHORT);
System.out.println(shor.format(new Date()));
try {
System.out.println(shor.parse("20-6-6")); //这里一定要对上格式 不然异常
} catch (ParseException e) {
e.printStackTrace();
}
}
}
还可以设置严格模式...还有很多设置详看API
这个可以 但是非常不方便! 所以呢!
2.SimpleDateFormat
他是 DateFormat的升级版 他可以自定义格式的时间日期:
Date and Time Pattern | Result |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
我们一般是 xxxx-xx-xx 所以是: yyyy-MM-dd
首先创建一个自定义格式的字符串,然后把new 一个对【刚开始是默认格式】
- 构造方法
Constructor and Description |
使用默认的 |
使用给定的模式和默认的日期格式符号默认 |
使用给定的模式和日期格式的符号构建了一个 |
使用给定的模式和默认的日期格式符号为给定的区域构造 |
- 他有4个构造 我们用第二个 就可以吧自定义的格式放入即可~
例:【很简单的......】
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
public class DateForm {
public static void main(String[] args) {
String form = "yyyy-MM-dd";
SimpleDateFormat dateFormat = new SimpleDateFormat(form);
Date now = new Date();
System.out.println(dateFormat.format(now));
try {
System.out.println(dateFormat.parse("2020-06-06"));
} catch (ParseException e) {
e.printStackTrace();
}
}
}
好了 这就是 最最最基础的时间转换了 希望帮到大家不会的..................................永远的学生 - bihu
作者:咸瑜