gpt4 book ai didi

java - Java 中以微秒为单位的解析时间

转载 作者:搜寻专家 更新时间:2023-11-01 02:25:54 24 4
gpt4 key购买 nike

我在解析格式为 2013-01-09 09:15:03.000000 的 Java 时间字符串时遇到问题。在我的数据中,最后三位数字始终为 0(意味着输入字符串只有毫秒精度),因此我将此格式传递给 SimpleDateFormat:

formatter = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss.SSS'000'");

但是 formatter.parse("2013-01-09 09:15:02.500000"); 抛出异常:

Unparseable date: "2013-01-09 09:15:02.500000"
at java.text.DateFormat.parse(DateFormat.java:357)

有谁知道如何正确地做到这一点?我可以通过使用格式 yyyy-MM-dd HH:mm:ss.SSS 并使用 substring 来摆脱最后三位数字来解决这个问题,但这真的很麻烦。

编辑:谁能解释为什么格式字符串 yyyy-MM-dd HH:mm:ss.SSS'000' 不能用于解析时间 "2013-01- 09 09:15:02.500000"

最佳答案

试试 java.sql.Timestamp

     Timestamp ts = Timestamp.valueOf("2013-01-09 09:15:03.500000"); 
Date date = new Date(ts.getTime())

与 SimpleDateFormat 相比,它也是线程安全且快速的

关于java - Java 中以微秒为单位的解析时间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22952618/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com