是的,Java的DateTimeFormatter
类可以精确到毫秒。你可以使用DateTimeFormatter.ofPattern()
方法创建一个格式化器,然后使用withZone()
方法设置时区。以下是一个示例:
import java.time.LocalDateTime; import java.time.ZoneId; import java.time.ZonedDateTime; import java.time.format.DateTimeFormatter; public class Main { public static void main(String[] args) { LocalDateTime localDateTime = LocalDateTime.now(); System.out.println("LocalDateTime: " + localDateTime); DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss.SSS"); ZonedDateTime zonedDateTime = localDateTime.atZone(ZoneId.systemDefault()); System.out.println("ZonedDateTime with milliseconds: " + zonedDateTime.format(formatter)); } }
在这个示例中,我们创建了一个DateTimeFormatter
对象,其格式为"yyyy-MM-dd HH:mm:ss.SSS"
,其中SSS
表示毫秒。然后,我们将当前LocalDateTime
对象转换为ZonedDateTime
对象,并使用格式化器将其格式化为字符串。这将输出一个包含日期、时间以及毫秒的字符串。