java 将String(20230516,17:49:04)转化为Date(yyyy-MM-dd HH:mm:ss)格式
时间: 2024-02-22 18:55:50 浏览: 110
你可以使用 SimpleDateFormat 类来将 String 类型的日期转换为 Date 类型,并且指定日期的格式。以下是一个示例代码:
```
String dateString = "20230516,17:49:04";
SimpleDateFormat format = new SimpleDateFormat("yyyyMMdd,HH:mm:ss");
Date date = format.parse(dateString);
format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String formattedDate = format.format(date);
System.out.println(formattedDate);
```
输出结果为:
```
2023-05-16 17:49:04
```
在上面的代码中,首先定义了一个字符串类型的日期 dateString,然后使用 SimpleDateFormat 类来指定该字符串的日期格式为 "yyyyMMdd,HH:mm:ss",并将其转换为 Date 类型的 date。
接下来,再次使用 SimpleDateFormat 类来指定目标日期格式为 "yyyy-MM-dd HH:mm:ss",并将 date 格式化为指定格式的字符串类型 formattedDate。
最后,使用 System.out.println() 方法将 formattedDate 输出到控制台。
相关问题
用java工具类列举多种方式实现Date类型 yyyy-MM-dd hh:mm:ss 转化为Date类型 yyyy-MM-dd
好的,以下是Java中实现Date类型格式转换的多种方式:
1. SimpleDateFormat类:可以使用SimpleDateFormat类将日期格式化为指定格式的字符串,然后再将字符串转换为Date类型。示例代码如下:
```java
String str = "2022-05-01 12:00:00";
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
Date date = sdf.parse(str);
```
2. Calendar类:可以使用Calendar类将日期格式化为指定格式的字符串,然后再将字符串转换为Date类型。示例代码如下:
```java
String str = "2022-05-01 12:00:00";
DateFormat df = new SimpleDateFormat("yyyy-MM-dd");
Calendar cal = Calendar.getInstance();
cal.setTime(df.parse(str));
Date date = cal.getTime();
```
3. DateTimeFormatter类:可以使用Java8中的DateTimeFormatter类将日期格式化为指定格式的字符串,然后再将字符串转换为Date类型。示例代码如下:
```java
String str = "2022-05-01 12:00:00";
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd");
LocalDate localDate = LocalDate.parse(str, DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"));
Date date = Date.from(localDate.atStartOfDay(ZoneId.systemDefault()).toInstant());
```
以上是三种实现方式,你可以根据自己的需要选择其中一种来实现Date类型的格式转换。
日期格式转换yyyy-MM-dd'T'HH:mm:ss.SSSXXX (yyyy-MM-dd'T'HH:mm:ss.SSSZ) TO yyyy-MM-dd HH:mm:ss
可以使用 SimpleDateFormat 类来进行日期格式转换,具体代码如下:
```java
String inputDate = "2021-11-11T11:11:11.111+08:00";
SimpleDateFormat inputFormat = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss.SSSXXX");
Date date = inputFormat.parse(inputDate);
SimpleDateFormat outputFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String outputDate = outputFormat.format(date);
System.out.println(outputDate); // 输出:2021-11-11 11:11:11
```
其中,inputDate 是输入的日期字符串,inputFormat 是输入日期字符串的格式,date 是转换后的 Date 对象,outputFormat 是输出日期字符串的格式,outputDate 是转换后的输出日期字符串。
阅读全文