gpt4 book ai didi

java - 如何在Java中解析格式为 "\/Date(1339638938087-0500)\/"的日期字符串?

转载 作者:行者123 更新时间:2023-12-02 07:42:46 24 4
gpt4 key购买 nike

我有来自 Web 服务 API 的格式为 "\/Date(1339638938087-0500)\/" 的字符串。

使用java,如何将其放入org.joda.time.DateTime变量中?

最佳答案

您需要提取这两条信息:

  • -2208967200000:自 Unix 纪元(UTC 时间 1970 年 1 月 1 日)以来的毫秒数
  • -0600:相对于 UTC 的偏移

假设该示例代表本地时间 1900 年 1 月 1 日午夜 - 因为 -2208967200000 部分代表世界标准时间 (UTC) 上午 6 点。

要将其转换为 Joda Time DateTime,您应该提取两个部分(去掉括号外的所有内容,然后使用长度来分割它,或者找到中间的 +/- 符号)。

接下来,将第一部分解析为 millis 部分的 long。然后,解析第二部分 - 可能为小时、分钟并分别签名。 (我假设它始终采用 xHHmm 的形式,其中 x 是符号,HH 是两位数的分钟,mm 是两位数的小时。)

使用 DateTimeZone.forHoursMinutesOffset 创建偏移量的固定时区或类似的东西。

最后,创建时间

new DateTime(millis, zone);

哦,然后踢掉那些制作如此可怕格式的人......

关于java - 如何在Java中解析格式为 "\/Date(1339638938087-0500)\/"的日期字符串?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11368285/

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