java如何在日期中间加横线

java如何在日期中间加横线

作者:Rhett Bai发布时间:2026-02-14阅读时长:0 分钟阅读次数:4

用户关注问题

Q
如何在Java中格式化日期以包含横线?

我想在Java程序中将日期格式化为带有中间横线的形式,比如2023-06-12,应该如何实现?

A

使用SimpleDateFormat添加日期中的横线

可以使用Java的SimpleDateFormat类,定义日期格式为"yyyy-MM-dd",这样格式化后的日期字符串就会在年、月、日之间添加横线。示例代码:

SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
String formattedDate = sdf.format(new Date());
System.out.println(formattedDate);

这会输出类似于2023-06-12的日期字符串。

Q
有没有简单的方法在Java日期字符串中插入横线?

我有一个不带分隔符的日期字符串,比如20230612,怎么在中间插入横线变成2023-06-12?

A

通过字符串操作在日期字符串中插入横线

可以通过字符串的substring方法,将年份、月份和日期部分拆分开,再拼接上横线。示例代码:

String dateStr = "20230612";
String formattedDate = dateStr.substring(0, 4) + "-" + dateStr.substring(4, 6) + "-" + dateStr.substring(6);
System.out.println(formattedDate);

这段代码会将原字符串转换为2023-06-12。

Q
Java 8及以上版本如何在日期格式中添加连字符?

使用Java 8的时间API,怎样定义日期格式使得日期中间有横线?

A

利用DateTimeFormatter格式化日期字符串

Java 8引入了新的日期时间API,可以用DateTimeFormatter来格式化日期,定义模式字符串为"yyyy-MM-dd"即可实现带横线的日期格式。示例代码:

LocalDate date = LocalDate.now();
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd");
String formattedDate = date.format(formatter);
System.out.println(formattedDate);

此代码会输出当前日期,格式为2023-06-12。