datetimeformatter用法
时间: 2023-04-22 17:02:45 浏览: 113
`DateTimeFormatter` 是 Java 8 中的一个类,用于格式化和解析日期和时间。它提供了丰富的格式选项,以灵活处理各种日期和时间字符串格式。例如,您可以使用它将日期转换为字符串,或者将字符串转换为日期。使用方法如下:
```
// 创建 DateTimeFormatter 对象,指定格式
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
// 格式化 LocalDateTime 对象
LocalDateTime now = LocalDateTime.now();
String str = formatter.format(now);
System.out.println(str); // 输出:2022-01-01 12:34:56
// 解析字符串为 LocalDateTime 对象
LocalDateTime dateTime = LocalDateTime.parse("2022-01-01 12:34:56", formatter);
System.out.println(dateTime); // 输出:2022-01-01T12:34:56
```
详情请参考:
- https://docs.oracle.com/en/java/javase/14/docs/api/java.base/java/time/format/DateTimeFormatter.html
相关问题
DateTimeFormatter使用方法
DateTimeFormatter是Java 8中的一个日期时间格式化类,用于将日期时间对象转换为字符串或将字符串转换为日期时间对象。使用方法如下:
1. 创建DateTimeFormatter对象:
a. 通过ofPattern方法传入格式化字符串创建DateTimeFormatter对象,例如:DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
b. 通过ofLocalizedDateTime方法传入FormatStyle和Locale创建DateTimeFormatter对象,例如:DateTimeFormatter formatter = DateTimeFormatter.ofLocalizedDateTime(FormatStyle.MEDIUM).withLocale(Locale.CHINA);
2. 将日期时间对象转换为字符串:
a. 调用format方法,传入日期时间对象,返回字符串,例如:String str = formatter.format(LocalDateTime.now());
3. 将字符串转换为日期时间对象:
a. 调用parse方法,传入字符串和DateTimeFormatter对象,返回日期时间对象,例如:LocalDateTime dateTime = LocalDateTime.parse("2022-01-01 00:00:00", formatter);
DateTimeFormatter 方法使用
DateTimeFormatter 是 Java 8 中引入的一个日期时间格式化工具类,用于将日期时间对象格式化为字符串或者将字符串解析为日期时间对象。下面是 DateTimeFormatter 的常用方法:
1. ofPattern(String pattern):使用指定的模式创建一个 DateTimeFormatter 对象。
2. format(TemporalAccessor temporal):将 TemporalAccessor 对象(例如 LocalDate、LocalDateTime、ZonedDateTime 等)格式化为字符串。
3. parse(CharSequence text):将字符串解析为 TemporalAccessor 对象。
4. withLocale(Locale locale):指定地区进行格式化或解析。
5. withZone(ZoneId zone):指定时区进行格式化或解析。
下面是一个简单的示例代码:
```
LocalDateTime now = LocalDateTime.now();
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
String formatDateTime = now.format(formatter);
System.out.println("格式化后的时间:" + formatDateTime);
String dateTimeStr = "2022-06-08 10:10:10";
LocalDateTime dateTime = LocalDateTime.parse(dateTimeStr, formatter);
System.out.println("解析后的时间:" + dateTime);
```