Java 简单日期格式化程序显示错误值

标签 java date

使用 SimpleDateFormat 显示纳秒时出现问题。

SimpleDateFormat sdf = new SimpleDateFormat("dd.MM.yyyy HH:mm:ss:SSSSSSS");     
Date dt = sdf.parse("03.08.2020 05:35:19:7600000"); 
System.out.println("Date  :" + sdf.format(dt) );

输出为:日期:03.08.2020 07:41:59:0000000。

能否请您帮助使输出显示纳秒为:7600000?谢谢!

最佳答案

我建议您从过时且容易出错的遗留日期时间 API 切换到 modern date-time API .

import java.time.LocalDateTime;
import java.time.format.DateTimeFormatter;

public class Main {
    public static void main(String[] args) {
        DateTimeFormatter format = DateTimeFormatter.ofPattern("dd.MM.yyyy HH:mm:ss:SSSSSSS");
        LocalDateTime ldt = LocalDateTime.parse("03.08.2020 05:35:19:7600000", format);
        System.out.println(ldt);
    }
}

输出:

2020-08-03T05:35:19.760

关于Java 简单日期格式化程序显示错误值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63235660/

相关文章:

java - 编码(并重定向)到在 Java 中具有特殊字符的 URL

javascript - 如何计算日期对象是否更接近一个或另一个日期

C# 添加项目,如果它们在日期之间

vba - 格式化函数错误

vba - excel VBA : operating with dates from spread sheet into a while/do

java - Do-While 循环和 hasNextInt()

java - 读取pkcs12证书信息

date - Bokeh - 如何正确设置和控制 xaxis 的日期时间 - 可能的错误?

java - Log4J 自定义字段

java - 将 int 转换为十六进制字符串需要更好的方法