无法将字符串转换为 ZonedDateTime:DateTimeParseException

2024-04-20

我尝试将字符串从 JSON 转换为 ZonedDateTime 就像

static String getWatchTime(JSONObject aJson, JSONObject bJson) {
    long difference = 0 ;
    try {
        String aTime = aJson.getString("time_utc_8");
        String bTime = bJson.getString("time_utc_8");

        String pattern = "yyyy-MM-dd HH:mm:ss.SSSSSS";
        DateTimeFormatter Parser = DateTimeFormatter.ofPattern(pattern).ISO_DATE;

        System.out.println(aTime);

        ZonedDateTime a = ZonedDateTime.parse(aTime, Parser);
        ZonedDateTime b = ZonedDateTime.parse(bTime, Parser);

        ChronoUnit unit = null;
        difference = unit.between(a, b);

        System.out.println(difference);

    } catch (JSONException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }

    String t = difference +"";
    return t;

}

并总是收到错误

Exception in thread "main" java.time.format.DateTimeParseException: Text '2016-06-28 22:29:44.700228' could not be parsed: Unable to obtain OffsetDateTime from TemporalAccessor: {},ISO resolved to 2016-06-28T22:29:44.700228 of type java.time.format.Parsed
at java.time.format.DateTimeFormatter.createError(Unknown Source)
at java.time.format.DateTimeFormatter.parse(Unknown Source)
at java.time.OffsetDateTime.parse(Unknown Source)
at Q2.getWatchTime(Q2.java:321)
at Q2.WatchTime(Q2.java:265)
at Q2.main(Q2.java:31)

我想知道这两个日期之间的差异。 我试过了SimpleDateFormat但对于工厂来说,它会得到错误结果。


我想评论里已经都有了,所以我只是总结一下。

(1) 您的格式模式字符串是正确的。你只需要删除.ISO_DATE从下面一行开始,所以它变成:

          DateTimeFormatter Parser = DateTimeFormatter.ofPattern(pattern);

(ISO_DATE接受例如 '2011-12-03+01:00' 或 '2011-12-03',没有时间的日期,有或没有与 UTC 的偏移;据我所知,你在这里没有什么用处。)

(2) 由于您的字符串似乎既没有时区也没有偏移量,因此使用LocalDateTime:

          LocalDateTime a = LocalDateTime.parse(aTime, Parser);
          LocalDateTime b = LocalDateTime.parse(bTime, Parser);

如果计算差异时需要考虑夏令时(DST)等,请在解析后转换时间:

          ZoneId timeZone = ZoneId.systemDefault();
          ZonedDateTime a = LocalDateTime.parse(aTime, Parser).atZone(timeZone);
          ZonedDateTime b = LocalDateTime.parse(bTime, Parser).atZone(timeZone);

请仔细考虑用于转换的时区,以便确保获得预期结果。

(3) A ChronoUnit of null行不通。我不知道你想要哪一个,所以这个选项是随机选择的:

          ChronoUnit unit = ChronoUnit.DAYS;

通过这三个更改,您的方法可以在我的计算机上很好地执行。一次运行就打印出:

2016-06-28 22:29:44.700228
365

在同一次运行中,它返回了一个字符串365.

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

无法将字符串转换为 ZonedDateTime:DateTimeParseException 的相关文章

  • 使用 Checkstyle Plugin 时从插件调用代码时出现问题:“org.eclipse.jface”

    我正在尝试在 Rational Software Architect 7 0 0 4 上使用 eclipse cs 插件 我最近卸载了旧的 beta2 版本并安装了 beta3 插件本身按照之前的配置工作 但是每当我尝试通过 Windows
  • 无法加载 jar 文件的主类

    我使用 Eclipse IDE 开发了一个应用程序 创建应用程序后 我以 jar 格式导出项目 当我尝试运行此 jar 文件时 出现错误 无法加载主类 请帮忙 当您将项目导出为 jar 时 请参阅此所以问题 https stackoverf
  • 如何对 IntStream 进行逆序排序

    我正在使用 txt 文件读取数字BufferedReader 我想颠倒该流中元素的顺序 以便在收集它们时 它们将从最高到最低排列 我不想在构建数组后进行排序 因为我不知道其中可能有多少元素 我只需要最高的 N 个元素 in new Buff
  • 使用 Spring 时实例化对象,用于测试与生产

    使用 Spring 时 应该使用 Spring 配置 xml 来实例化生产对象 并在测试时直接实例化对象 这样的理解是否正确 Eg MyMain java package org world hello import org springf
  • 如何按单个整数字段对 JSON 进行排序? [复制]

    这个问题在这里已经有答案了 我有以下 JSON title title order 0 order 9 order 2 JSON 包含很多字段 我如何根据字段对它们进行排序order field 我一直在寻找 Nodejs 中内置的东西 但
  • Android - 除了普通 SSL 证书之外还验证自签名证书

    我有一个通过 SSL 调用 Web 服务的 Android 应用程序 在生产中 我们将拥有由受信任的 CA 签名的普通 SSL 证书 但是 我们需要能够支持自签名证书 由我们自己的 CA 签名 我已经成功实施了接受自签名证书的建议解决方案
  • PropertySources 中各种源的优先级

    Spring引入了新的注释 PropertySources对于所有标记为的类 Configuration since 4 0 需要不同的 PropertySource作为论证 PropertySources PropertySource c
  • 如何强制控制器/操作使用 JsonValueProvider

    再会 我正在使用 ASP NET MVC 3 其中JsonValueProvider http haacked com archive 2010 04 15 sending json to an asp net mvc action met
  • Java 变量的作用域

    我不明白为什么这段代码的输出是10 package uno public class A int x 10 A int x 12 new B public static void main String args int x 11 new
  • 服务器到 Firebase HTTP POST 结果为响应消息 200

    使用 Java 代码 向下滚动查看 我使用 FCM 向我的 Android 发送通知消息 当提供正确的服务器密钥令牌时 我收到如下所示的响应消息 之后从 FCM 收到以下响应消息 Response 200 Success Message m
  • 如何将 XMP XML 块序列化为现有的 JPEG 图像?

    我有许多 JPEG 图像 其中包含损坏的 XMP XML 块 我可以轻松修复这些块 但我不确定如何将 固定 数据写回图像文件 我目前正在使用 JAVA 但我愿意接受任何能让这项任务变得容易的事情 这是目标关于 XMP XML 的另一个问题
  • 所有junit测试后的清理

    在我的项目中 我必须在所有测试之前进行一些存储库设置 这是使用一些棘手的静态规则来完成的 然而 在所有测试之后我不知道如何进行清理 我不想保留一些神奇的静态数字来引用所有测试方法的数量 我应该一直维护它 最受赞赏的方法是添加一些侦听器 该侦
  • cucumber-junit-platform-engine 中的功能文件发现

    In cucumber junit我使用的库 CucumberOptions定义功能文件位置 package com mycompany cucumber import cucumber api CucumberOptions import
  • 使用 java 按电子邮件发送日历邀请

    我正在尝试使用 java 发送每封电子邮件的日历邀请 收件人收到电子邮件 但不会显示接受或拒绝的邀请 而是将该事件自动添加到他的日历中 我正在使用 ical4j jar 构建活动 邀请 private Calendar getInvite
  • 尝试在没有 GatewayIntent 的情况下访问消息内容

    我希望每当我写一条打招呼的消息时 机器人都会在控制台中响应一条消息 但它只是给我一个错误 JDA MainWS ReadThread WARN JDA Attempting to access message content without
  • 如何在android sdk上使用PowerMock

    我想为我的 android 项目编写一些单元测试和仪器测试 然而 我遇到了一个困扰我一段时间的问题 我需要模拟静态方法并伪造返回值来测试项目 经过一些论坛的调查 唯一的方法是使用PowerMock来模拟静态方法 这是我的 gradle 的一
  • 重写Object类的finalize()方法有什么用?

    据我所知 在java中如果我们想手动调用垃圾收集器 我们可以执行System gc 1 我们在重写的finalize 方法中做了哪些操作 2 如果我们想手动调用JVM垃圾收集器 是否需要重写finalize 方法 我们在重写的 Finali
  • Java中获取集合的幂集

    的幂集为 1 2 3 is 2 3 2 3 1 2 1 3 1 2 3 1 假设我有一个Set在爪哇中 Set
  • Java中有类似分支/跳转表的东西吗?

    Java有类似分支表或跳转表的东西吗 分支表或跳转表是 根据维基百科 http en wikipedia org wiki Branch table 用于描述使用分支指令表将程序控制 分支 转移到程序的另一部分 或可能已动态加载的不同程序
  • 尝试使用带有有效购买令牌的 Java Google Play Developer API v3 检索应用内购买信息时出现错误请求(无效值)

    当使用 Java Google Play Developer API 版本 3 并请求有效购买令牌的购买信息时 我收到以下异常 API 调用返回 400 Bad Request 响应以及以下消息 code 400 errors domain

随机推荐

  • 如何在 jQuery keyup 事件中实现 debounce fn?

    计算基于用户输入 标准是使用keyup而不是change or blur 问题是代码在每次击键时都会触发 而我需要它在 500 毫秒超时后仅延迟并触发一次 我下面的例子显然不起作用 附加了小提琴 我找到了大卫 沃尔什的dbounce功能 但
  • .NET 4 自旋锁

    以下测试代码 F 未返回我期望的结果 let safeCount let n 1000000 let counter ref 0 let spinlock ref lt SpinLock false let run i0 i1 for i
  • 在 Kotlin 中使用 Room 的 @ForeignKey 作为 @Entity 参数

    我遇到了一个房间tutorial https android jlelse eu android architecture components room relationships bf473510c14a这利用了 PrimaryKey类
  • 如何将 NSDictionary 转换为自定义对象

    我有一个 json 对象 interface Order NSObject property nonatomic retain NSString OrderId property nonatomic retain NSString Titl
  • Redhat 的 RHEL8 相当于“apk add --no-cache gcc musl-dev linux-headers”

    我正在尝试使用安装在 RedHat enterprise linux 7 8 映像上的 Python 上的 https docs docker com compose gettingstarted 中的示例代码 此行出现错误 127 RUN
  • 在不阻塞的情况下“通知”处理器的正确方法是什么?

    假设我有很多东西 我必须对所有这些东西进行一些操作 如果一个元素的操作失败 我想停止整个阵列的工作 这项工作分布在多个处理器上 我想实现这一目标 同时将发送 接收的消息数量保持在最低限度 另外 如果没有必要 我不想阻止处理器 我该如何使用
  • Rails 6+、zeitwerk 自动加载器和命名空间常量

    Rails 6 默认自动加载器是 zeitwerk 这似乎比以前的方法有了很大的改进 然而 zeitwork 遵循 Rails 项目的惯例 即任何内容app 是自动加载的 不需要命名空间 这非常适合app models user rb因为你
  • VM1550 installHook.js:1860 在控制台中记录为双行

    我正在使用反应应用程序并构建一个简单的应用程序 当我使用 console log 方法在控制台上记录某些内容时 控制台上会出现第二条日志 它似乎来自第 1860 行的文件名 installHook js 我已经尝试过寻找它 但我没有找到 我
  • 如何在 HP 触摸板上使用 webOS 命令行拍照?

    在 webos 上 我正在运行 openssh 并且想使用命令行脚本拍照 我怀疑这将包括一些 luna send 命令 或者 gst launch 但我对文档没有任何运气 webos 没有任何预期的捕获工具 但我可以访问 dev video
  • 在邮件中附加两个文件

    我想创建一个 VBA 脚本 将两个文件附加到邮件中 这段代码让我可以附加一个文件 Sub openWord Dim OutApp As Object Dim OutMail As Object Set OutApp CreateObject
  • Android Facebook 应用程序注销问题

    我的应用程序使用 Facebook SDK 来发布状态更新 另外还有注销功能 我可以在应用程序第一次运行时登录 我可以在 Facebook 上成功发布状态消息 但一旦我注销 后续运行并尝试更新状态时 我会遇到来自 facebook 的错误
  • 如何编写一个函数来测试链接列表是否已排序

    我查看了其他帖子 但没有找到适合我的查询的很好的解决方案 我不想对链接列表进行实际排序 我想看看它是否已排序 我有一个 C 中的链表问题 我被要求编写一个给定链表定义的函数来查看它是否已排序 实现函数 isSorted 如果链表中的值按升序
  • 如何在WebKit中调用参数化的javascript函数?

    我正在尝试将 2 个参数传递给 javascript 函数 这段代码webview loadUrl javascript function to call 没有参数可以正常工作 但我无法使用参数 这是 javascript 连接点 func
  • 纯文本压缩算法的现状如何?

    为了纪念哈特奖 http prize hutter1 net 文本压缩的顶级算法 以及每种算法的快速描述 是什么 注意 这个问题的目的是获得压缩算法的描述 而不是压缩程序的描述 突破边界的压缩器结合了疯狂结果的算法 常见的算法包括 The
  • 没有名为 EntityManager 的持久性提供程序

    我有我的persistence xml使用相同的名称TopLink在下面META INF目录 然后 我的代码使用以下方式调用它 EntityManagerFactory emfdb Persistence createEntityManag
  • Next js 子组件的父路由组件

    让我们想象一下我们有admin有几个页面的模块定制 settings account 这些页面中的每一个都应该有一些通用的布局 sidebar 对于标准 React 应用程序 我将做下一步来实现应用程序的这一部分 我会创建父路线 admin
  • 防止任务窗格在保存期间关闭(异步)

    我们使用 OfficeJs REST API 进行加载项开发 要使用此 API 需要一个 accesstoken 我们通过调用来请求该 accesstokenOffice mailbox getCallbackTokenAsync isRe
  • 如何在 Python 中对两个列表进行异或? [复制]

    这个问题在这里已经有答案了 我有两个列表 例如 a hello world b hello world im steve 如果我想创建第三个列表 其中仅包含两个列表中都不包含的元素 c im steve 如果元素的顺序很重要 我该怎么做 我
  • 添加连续颜色渐变图例条以进行绘图

    我正在使用以下数据和代码来绘制barplot ddf structure list VAR structure 1 9 Label c aaa bbb ccc ddd eee fff ggg hhh iii class factor VAL
  • 无法将字符串转换为 ZonedDateTime:DateTimeParseException

    我尝试将字符串从 JSON 转换为 ZonedDateTime 就像 static String getWatchTime JSONObject aJson JSONObject bJson long difference 0 try St