以正确的顺序从 Web 服务迭代 Json 数据

2024-01-25

我收到来自网络服务的响应,数据位于JSON form.

JSONObject event:-

{
  "15:00":{"type":1,"status":null,"appointment_id":null}, 
  "16:00":{"type":1,"status":null,"appointment_id":null},
  "17:00":{"type":1,"status":null,"appointment_id":null},
  "18:00":{"type":1,"status":"1","appointment_id":5}
}

我不知道关键值,它们是随机的。因此,当我通过获取使用迭代器迭代数据时keys and hasNext()。它返回数据,但更改传入数据的顺序。

Iterator AppoinmentIter = event.keys();
while(AppoinmentIter.hasNext()){   
        String appointmentTime = (String)AppoinmentIter.next();   
        JSONObject appointmentDetails = event.getJSONObject(appointmentTime);
 }

我希望数据按照其出现的确切顺序排列。 我检查了这个link https://stackoverflow.com/questions/6996191/how-to-get-the-elements-in-correct-order-from-iterator,建议使用LinkedHashMap。但在这里他们通过键插入值。而且我不知道数据中的键。那么我怎样才能以正确的顺序迭代数据呢?请帮忙..


JSON 不是这样工作的。它假设顺序并不重要,除非你有一个数组。如果您希望顺序重要,那么您使用了错误的格式 - 您需要使用时间 - >值的数组,而不仅仅是时间 - >值。

对于您的特定应用程序,您可以获取一组键,然后使用自定义比较器对它们进行排序,该比较器使用解析为时间的值来对它们进行排序。但内置库不会为您做这件事,因为您没有按照设计使用 JSON。

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

以正确的顺序从 Web 服务迭代 Json 数据 的相关文章

  • 虽然我的类已加载,但 Class.forName 抛出 ClassNotFoundException

    代码如下 它的作用是加载我放在主目录中的 jar 文件中的所有类 import java io File import java util jar JarFile import java util jar JarEntry import j
  • 使用 Javascript/Node.js 在代码内执行 mongoimport

    node js javascript 中是否有任何库可供个人使用mongoimport在代码中 据我了解 mongoimport 有点像 exe 您必须先执行它 然后才能使用其文本输入环境 是否可以在我的代码中执行 mongoimport
  • 如何将 Android 添加到 Phonegap 平台版本 3

    经过大量挖掘 我相信这个问题 https stackoverflow com questions 18423444 phonegap 3 doesnt work with andriod studio与我没有添加任何用于构建phonegap
  • 如何在 C# 中将 Json 转换为对象

    我想将 Json 转换为 C 中的对象 这里的 Json 是 值 e920ce0f e3f5 4c6f 8e3d d2fbc51990e4 如何使用 Object 问题看似愚蠢 但其实并不那么愚蠢 我没有简单的 Json 我有 IEnume
  • Android NDK 代码中的 SIGILL

    我在市场上有一个 NDK 应用程序 并获得了有关以下内容的本机崩溃报告 SIGILL信号 我使用 Google Breakpad 生成本机崩溃报告 以下是详细信息 我的应用程序是为armeabi v7a with霓虹灯支持 它在 NVIDI
  • 在运行时更改用作背景的 Drawable xml 内的形状纯色

    我有一个 Drawable xml 文件 background xml
  • 我们如何测试包私有类?

    我正在看书Effective Java in Item 13 Minimize the accessibility of classes and members 它提到 为了方便测试 您可能想让类 接口或成员更易于访问 这在某种程度上是好的
  • 如何通过 Android 按钮单击运行单独的应用程序

    我尝试在 Android 应用程序中添加两个按钮 以从单独的两个应用程序订单系统和库存系统中选择一个应用程序 如图所示 我已将这两个应用程序实现为两个单独的 Android 项目 当我尝试运行此应用程序时 它会出现直到正确选择窗口 但是当按
  • JAVA中遍历JSON数据

    我是 JSON 新手 我使用 HTTPUrlConnections 并在 JAVA 程序中获得一些响应 响应数据将类似于 data id 1 userId 1 name ABC modified 2014 12 04 created 201
  • Play.application() 的替代方案是什么

    我是 Play 框架的新手 我想读取conf文件夹中的一个文件 所以我用了Play application classloader getResources Data json nextElement getFile 但我知道 play P
  • Lombok @Builder 不创建不可变对象?

    在很多网站上 我看到 lombok Builder 可以用来创建不可变的对象 https www baeldung com lombok builder singular https www baeldung com lombok buil
  • 离子初始加载时间

    我正在使用 Ionic 构建一个简单的应用程序 但我的应用程序在冷启动时的初始加载时间方面存在性能问题 这是我所做的 collection repeat 代替带有 track by 的 ng repeat 原生滚动 overflow scr
  • 禁用 Android 菜单组

    我尝试使用以下代码禁用菜单组 但它不起作用 菜单项仍然启用 你能告诉我出了什么问题吗 资源 菜单 menu xml menu menu
  • 如何在Java中对对象数组进行字段级别排序以进行等级比较?

    In Java Class StudentProgress String Name String Grade CTOR goes here main class main method StudentProgress arrayofObje
  • 源值 1.5 的错误已过时,将在未来版本中删除

    我使用 scala maven plugin 来编译包含 scala 和 java 代码的项目 我已经将源和目标设置为1 7 但不知道为什么maven仍然使用1 5 这是我在 pom xml 中的插件
  • 使用 Java https 上传到 Imgur v3 错误

    我目前正在尝试使用他们当前的 API v3 上传到 imgur 但是我不断收到错误 错误 javax net ssl SSLException 证书中的主机名不匹配 api imgur com imgur com OR imgur com
  • 记录类名、方法名和行号的性能影响

    我正在我的 java 应用程序中实现日志记录 以便我可以调试应用程序投入生产后可能出现的潜在问题 考虑到在这种情况下 人们不会奢侈地使用 IDE 开发工具 以调试模式运行事物或单步执行完整代码 因此在每条消息中记录类名 方法名和行号将非常有
  • 如何使用通配符模拟泛型方法的行为

    我正在使用 EasyMock 3 2 我想基于 Spring Security 为我的部分安全系统编写一个测试 我想嘲笑Authentication http docs spring io autorepo docs spring secu
  • 即使调整大小,如何获得屏幕的精确中间位置

    好的 这个问题有两部分 当我做一个JFrame 并在其上画一些东西 即使我将宽度设置为 400 并使其在一个项目击中它时 当然 允许项目宽度 它会反弹回来 但由于某种原因 它总是偏离屏幕约 10 个像素 有没有办法解决这个问题 或者我只需要
  • Android GetPTLAFormat 上的 Phonegap 错误

    我们正在开发一个使用 jQuery 移动和电话间隙的应用程序 一切似乎都工作正常 但是当在连接的 Android 手机上运行应用程序时 我们在 Eclipse logcat 中看到大量类似这样的错误 0 GetPTLAFormat inva

随机推荐

  • 如何删除正在执行的jar文件

    我创建了一个应用程序 在该应用程序中 它根据操作修改 jar 内的属性文件 我可以使用更新的更改创建一个新的临时 jar 但无法将 jar 文件重命名为现有的 jar 文件名 由于它正在运行 我无法删除和重命名它 任何人都可以提出任何操作或
  • data.table 中的条件连接?

    我有以下数据表 dtgrouped2 MonthNo Unique Total 1 1 AAA 10 2 1 BBB 0 3 2 CCC 3 4 2 DDD 0 5 3 AAA 0 6 3 BBB 35 7 4 CCC 15 8 4 AAA
  • Spark Select 与 Scala 列列表

    我正在尝试找到一种使用 List Column 进行火花选择的好方法 我正在爆炸一列 而不是通过爆炸列传回我感兴趣的所有列 var columns getColumns x Returns a List Column tempDf sele
  • 如何在 Seaborn 热图旁边添加列

    鉴于下面的代码会生成热图 我如何获得 D 列 总列 要在热图右侧显示为无颜色的列 只需对齐每个单元格的总值 我还试图将标签移到顶部 我不介意左侧的标签是水平的 因为我的实际数据不会出现这种情况 import matplotlib pyplo
  • len() 是 python 中的函数还是方法?

    在面向对象编程的上下文中 函数不同于方法 当我检查帮助文档时 这段代码 len outputs Signature len obj Docstring Return the number of items in a container Ty
  • 如何将 .gif 转换为 byte[][]?

    我正在使用一个有方法的 API public void setImage byte newImage API 参考中给出的唯一信息是 该图像的格式是简单的原始2D array字节数 每个字节代表灰度black 0 to white 255
  • 在 Windows 上的 Cmake 中链接不同的库以进行调试和发布构建?

    因此 我有一个正在编译的库 我需要链接不同的第三方内容 具体取决于它是调试还是发布版本 特别是这些库的发布或调试版本 在 Cmake 中有一个简单的方法可以做到这一点吗 编辑 我应该注意我正在使用 Visual Studio 根据CMake
  • Debian httpredir 镜像系统在 Docker 中不可靠/不可用?

    简洁版本 Debian 的httpredir debian org镜像服务导致我的 Docker 构建经常失败 因为 apt get 无法下载包或连接到服务器或类似的东西 我是唯一一个有这个问题的人吗 问题是我的 Debian 的还是 Do
  • 是否正在努力开发具有文件自动更改检测功能的面向构建的文件系统?

    我最近开始使用 Git 我发现的有趣功能之一是使用哈希来快速检测更改 另一方面 我看到构建工具 如 make ant javac 等 尝试通过检查文件的时间戳来检测源文件中的更改 这种方法的问题是 如果您从事不止一项工作 机器 你必须确保所
  • 实体框架 4.1 - 选择

    我使用以下表达式 ProductRepository Query Include Function x x ChildProducts Select Function y y PriceTiers Where Function z z Is
  • 将 csv 文件加载到 jQuery 中?

    我有一个 CSV 文件 我想将其用作 jQuery 浮点图的源数据 我是不是该 找到一个可以直接加载 CSV 文件的 jQuery 插件吗 将 CSV 文件转换为 JSON 并使用它 做一些完全不同的事情吗 我没有找到一个可以处理外部 CS
  • 如何在 C++ 中重载运算符 &

    如何在 C 中重载运算符 我试过这个 ifndef OBJECT H define OBJECT H include
  • 当 showdialogwindow 阻止我尝试访问的窗口时,是否有一个事件或我可以使用的东西

    我有 2 个窗户 我们称他们为 A 和 B A 使用 ShowDialog 打开 B 所以我正在打开 B 当用户最小化 B 或以某种方式将其放入后面并尝试再次单击窗口 A 时 它会被阻止 应该如此 但是当发生这种情况时 是否有一个我可以赶上
  • Boost Deadline_timer 导致堆栈缓冲区溢出

    最近几天 我一直被 Boost Deadline timer 的一个非常奇怪的错误困扰 桌面 Ubuntu 18 04 增强 v1 65 01 当我在类 AddressSanitizer 的构造函数中创建新的 Deadline timer
  • 如何使用 graphql-java 响应扩展?

    我来自 GraphQL 的响应必须遵循特定的格式 data errors extensions 然而 我不确定如何通过我的方法的扩展来做出响应 我正在使用 graphql spring boot 来引入 graphql java graph
  • 将 DataGrid 绑定到 ObservableCollection

    我有一个ObservableCollection
  • 用于调用 wso2 安全 Web 服务的独立 java 代码

    我在 wso2esb 上有一个安全的 Web 服务 它基于用户名令牌 现在 我想创建一个独立的 java 程序来调用此 Web 服务 我很难弄清楚如何做到这一点 你能帮我一下吗 感谢致敬 通过这种方式访问 安全的Web服务 我假设你使用UT
  • 如何在 MVC3 中托管 Web 服务?

    如何在 mvc3 中使用 Web 服务 我应该在哪里包含网络服务 对此完全陌生 请帮忙 In latest versions of VS you can click here 在打开的窗口中 您将能够输入服务地址并进行所需的配置 您可以将服
  • Github API 返回发布数组的空资产

    我正在尝试通过 gitHub api 跟踪 gitHub 版本的 download count 我不需要太多 我只是想看看它是什么 我正在尝试获取以下信息 http developer github com v3 repos release
  • 以正确的顺序从 Web 服务迭代 Json 数据

    我收到来自网络服务的响应 数据位于JSON form JSONObject event 15 00 type 1 status null appointment id null 16 00 type 1 status null appoin