SimpleDateFormat两位年份转换为四位年份问题解决
时间: 2023-07-25 19:20:18 浏览: 73
要将SimpleDateFormat的两位年份转换为四位年份,可以使用Calendar类来实现。具体做法如下:
1. 先将字符串类型的日期转换为Date类型。
2. 创建Calendar对象,并将Date类型的日期设置为Calendar对象的时间。
3. 使用Calendar对象的get方法获取年份,如果年份小于100,则加上1900,即可得到四位年份。
下面是示例代码:
```
String dateStr = "21-01-01"; // 日期字符串,年份为两位数
SimpleDateFormat sdf = new SimpleDateFormat("yy-MM-dd"); // 定义日期格式
Date date = sdf.parse(dateStr); // 将字符串转换为Date类型
Calendar calendar = Calendar.getInstance(); // 创建Calendar对象
calendar.setTime(date); // 将Date类型的日期设置为Calendar对象的时间
int year = calendar.get(Calendar.YEAR); // 获取年份
if (year < 100) {
year += 1900; // 如果年份小于100,则加上1900,即可得到四位年份
}
System.out.println(year); // 输出四位年份
```
输出结果为:2021。
相关问题
SimpleDateFormat日期转换多了一年
SimpleDateFormat是Java中用于日期格式化和解析的类。在使用SimpleDateFormat进行日期转换时,有一个常见的问题是混淆了小写的"yyyy"和大写的"YYYY"。这两个符号在日期格式中有不同的含义。
- "yyyy"表示年份,使用四位数表示,例如2021年。
- "YYYY"表示周年,即根据周的第一天来确定年份。如果日期跨越了两个年份的第一周,那么"YYYY"会返回下一年的年份。
在你提供的代码中,使用了"yyyy-MM-dd H:m:s"的格式进行日期解析。这意味着解析的年份是按照四位数表示的。所以,无论输入的日期是哪一年,解析后的结果都会是相同的年份。
如果你想要根据周的第一天来确定年份,可以使用"YYYY"来表示年份。这样,当日期跨越两个年份的第一周时,解析后的结果会返回下一年的年份。
以下是一个示例代码,演示了使用"YYYY"进行日期解析的情况:
```java
SimpleDateFormat simpleDateFormat = new SimpleDateFormat("YYYY-MM-dd H:m:s");
String string = "2018-3-19 14:47:10";try {
Date parse = simpleDateFormat.parse(string);
System.out.println(parse);
} catch (ParseException e) {
e.printStackTrace();
}
```
在这个示例中,输入的日期是2018年3月19日,但由于这一天是2018年的第12周,解析后的结果会返回2019年的日期。
SimpleDateFormat dsf
SimpleDateFormat是Java中的一个日期格式化类,用于将日期对象按照指定的格式转换成字符串,或者将字符串按照指定的格式解析成日期对象。
SimpleDateFormat类的构造方法可以接受一个日期格式的字符串作为参数,该字符串定义了日期的格式。常用的日期格式包括:
- "yyyy":表示四位数的年份,如2022
- "MM":表示两位数的月份,如01表示一月
- "dd":表示两位数的日期,如01表示一号
- "HH":表示两位数的小时,使用24小时制
- "mm":表示两位数的分钟
- "ss":表示两位数的秒钟
除了上述常用的格式之外,还可以使用其他字符来定义更复杂的日期格式,例如:
- "yyyy-MM-dd":表示年-月-日的格式,如2022-01-01
- "yyyy/MM/dd HH:mm:ss":表示年/月/日 小时:分钟:秒钟的格式,如2022/01/01 12:00:00
使用SimpleDateFormat类可以进行日期对象和字符串之间的相互转换。例如,可以使用format()方法将日期对象格式化成字符串,或者使用parse()方法将字符串解析成日期对象。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![application/x-rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)