在 Java 中从 json 文件中删除 json 对象

2023-12-19

我有一个在线下载的 json 文件:

 {
"price": 1,
"empty": [
  0,
  0,
  0,
  0,
  0
],
"lowValue": 0,
"highValue": 0
},

我想删除其中的所有内容

“空的”: [

to

],

我花了几个小时研究正则表达式的东西,但我似乎不知道如何让它做我想做的事情。

Edit:Annamalai Thangaraj 的方法在我向文件中添加更多内容之前一直有效。

{
"price": 1,
"empty": [
  0,
  0,
  0,
  0,
  0
],
"lowValue": 0,
"highValue": 0
},
{
"price": 500,
"empty": [
  5,
  0,
  3,
  6,
  9
],
"lowValue": 4,
"highValue": 2
}

现在我收到一个错误:

线程“main”中的异常 java.lang.ClassCastException:com.google.gson.JsonArray 无法转换为 com.google.gson.JsonObject

我的代码正是:

public static void go() throws IOException {
    JsonObject jsonObject = (JsonObject)JsonParser.parse(new FileReader(location));
    jsonObject.remove("empty");

    JsonArray jsonArray = (JsonArray)JsonParser.parse(new FileReader(location));


    Gson gson = new GsonBuilder().setPrettyPrinting().create();
    JsonParser jp = new JsonParser();
    JsonElement je = jp.parse(jsonObject.toString());
    String prettyJsonString = gson.toJson(je);

    FileWriter file = new FileWriter(System.getProperties().getProperty("user.home")+"\\output.json");
    try {
        file.write(prettyJsonString);
        System.out.println("Successfully wrote JSON object to file.");

    } catch (IOException e) {
        e.printStackTrace();

    } finally {
        file.flush();
        file.close();
    }
}

使用以下代码删除元素empty来自 json

JSONObject jsonObject = (JSONObject) jsonParser.parse(new FileReader("File Path"));
jsonObject .remove("empty");

移除后empty元素使用 jsonObject.toJSONString() 获取目标 JSON,现在 JSON 的结构将如下所示

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

在 Java 中从 json 文件中删除 json 对象 的相关文章

  • 如何在不改变的情况下将字符串转换为字节?

    我需要一个解决方案将字符串转换为字节数组而不需要像这样进行更改 Input String s Test Output String s Test byte b Test 当我使用 s getBytes 那么回复是 B 428b76b8 但我
  • 在 Eclipse 中跨文件搜索注释掉的代码

    有没有一种快速方法可以在 Eclipse 中查找 Java 文件中所有注释掉的代码 也许是搜索中的任何选项 或者任何可以执行此操作的附加组件 它应该只能找到被注释掉的代码 而不是普通的注释 在 Eclipse 中 我只是在打开正则表达式复选
  • 无法让远程 EJB 与 Wildfly 上的 EJB 客户端 API 配合使用

    我目前正在努力让远程 EJB 调用在 wildfly 8 x 和 9 x 上工作 详细来说 它是关于使用 EJB 客户端 API 方法从独立客户端应用程序 而不是从另一个应用程序服务器 进行远程调用 远程命名方法适用于我 但不适用于我的场景
  • 使用 .NET 2.0 解析 JSON

    想要改进这篇文章吗 提供此问题的详细答案 包括引用和解释为什么你的答案是正确的 不够详细的答案可能会被编辑或删除 我有一个用 C 编写的应用程序 带有 NET Framework 2 0 版本 不幸的是 我无法选择更新到较新版本的 NET
  • 使用 Java 检索 Window 进程的 CPU 使用率

    我正在寻找一个 Java 解决方案来查找 Windows 中正在运行的进程的 CPU 使用情况 查了一下网上 关于Java解决方案的信息似乎很少 请记住 我并不是要查找 JVM 的 CPU 使用情况 而是要查找当时在 Windows 中运行
  • java“类文件包含错误的类”错误

    我正在尝试制作一个控制台应用程序来测试我的网络服务 我成功部署了一个网络服务http localhost 8080 WS myWS http localhost 8080 WS myWS我用 wsimport 制作了代理类 wsimport
  • 如何使用 JAVA 和 ADB 命令检查 Appium 中键盘是否打开

    我正在尝试检查 Android 默认键盘是否打开 我没有找到任何可以在 Appium 中使用 JAVA 和 ADB 命令检查键盘的内容 我发现这个 ADB 命令可以检查键盘是否打开 adb shell dumpsys input metho
  • Tomcat JDBC 池中没有足够的空闲连接

    给定以下 Tomcat JDBC 连接设置
  • 在 Java 中查询 XML 的最简单方法

    我有带有 XML 的小字符串 例如 String myxml
  • Ubuntu 的打包 - Web 应用程序

    Web 应用程序没有与 C 或类似文件不同的 make 文件 但是 它需要放置在特定的目录中 例如 var www 我是 Linux 打包新手 所以我的问题是 如何将我的应用程序打包到 deb 中 以便在安装时将其放入 etc myprog
  • 创建一个 int 类型的随机数组。爪哇

    我需要创建一个随机的 int 数组 并按我自己的类对其进行排序 这是我制作数组的地方 public class MyProgram9 public static void main String args int list new int
  • 使用java读取Excel工作表的单列

    我有一张 Excel 表格 我想编写一个方法 该方法将参数作为要读取的列号 并返回一个由该列中的所有数据组成的数组 然后将该列元素放置在 xml 工作表中 我怎样才能编写一个方法来做到这一点 使用 Apache POI 您可以在他们的使用页
  • 从 AlertDialog 返回值

    我想构建一个函数来创建 AlertDialog 并返回用户输入的字符串 这是我用于创建对话框的函数 如何返回该值 String m Text private String openDialog String title AlertDialo
  • Restful WS 中的 WSDL 等价物是什么?如果没有,消费者如何生成所需的客户端类?

    比如说 我在java中有生产者 在 net中有消费者 生产者有一个方法 需要 员工作为方法参数并在数据库中创建员工 对于基于 SOAP 的 ws dot net 客户端将调用 WSDL 并创建存根 包括 dot net 中的员工数据表示 现
  • 一个领域模型,多个 json 视图

    我们有一组域类 它们使用球衣服务通过 jackson 序列化为 json 我们目前正在使用 JAXB 对类进行注释 尽管我们并不局限于此 这很好用 但我们希望为不同的用例提供不同的类序列化 Web site 移动应用程序 管理工具 公共AP
  • Web服务连接超时和请求超时之间的区别

    WebClientTestService service new WebClientTestService int connectionTimeOutInMs 5000 Map
  • 将 JSON 文件拆分为单独的文件

    我有一个大的 JSON 文件 它是对象的对象 我想将其拆分为对象键后的单独文件名 是否可以使用 jq 或任何其他现成工具来实现这一目标 原始 JSON 格式如下 item1 item2 鉴于此输入 我想生成文件 item1 json ite
  • Java Calendar.set(Calendar.DAY_OF_WEEK, Calendar.SUNDAY),它会向后滚动、向前滚动还是未知?

    假设以下代码在 2009 年 8 月 22 日 星期六 执行 Calendar c Calendar getInstance c set Calendar DAY OF WEEK Calendar SUNDAY c get Calendar
  • 在测试期间调用预定方法[重复]

    这个问题在这里已经有答案了 我正在使用 Maven 开发 SpringBoot 应用程序 我有一个班级 Component有方法的注释m与 Scheduled initialDelay 1000 fixedDelay 5000 注解 这里f
  • 在 Vavr 中结合任一者?

    我有几个Vavr https www vavr io Either https www vavr io vavr docs either的 我想调用一个函数Right每个 Either 的值 例如 Either

随机推荐

  • 如何声明一个 Class 对象,使其成为 Java 中的枚举和接口

    我有一个实用程序类 需要在通用类上工作 但必须仅限于那些枚举并实现特定接口的类 These two work Class gt enumClass Class gt enumAndInterfaceClass 对于泛型我可以成功使用它 pu
  • React组件回调实现方法有什么区别

    import React from react import ChildComponent from ChildComponent class SampleComponent extends React Component sampleCa
  • 如何在 cefsharp WPF 项目中加载扩展?

    我正在尝试在 WPF 项目中的 cefsharp 嵌入式浏览器中加载扩展 但这样做时应用程序会冻结 这是我一直在加载一个非常简单的扩展的代码 var setting new CefSettings setting RegisterExten
  • 类型不可序列化,因为它不是公共的?

    我有一个无法正确序列化的公共类 尝试时 会引发以下异常 数据协定类型 MyProject MyClass 不可序列化 因为它不是公共的 公开该类型将修复此错误 或者 您可以将其设置为内部 并使用程序集上的 InternalsVisibleT
  • 控制java调度算法

    今天我和一位有趣的受访者交谈 他坚持认为提高 Java 应用程序性能的最佳方法是重写线程调度算法 鉴于我们依赖 JVM 线程调度算法 我有理由确信这是不可能的 但我想知道是否有任何技术可以用来影响调度算法 或者如果有一个令人信服的理由这样做
  • 在此 P/Invoke 用例中正确使用 SafeHandles

    在 C 中使用本机 Dll 使用不透明句柄和内部引用计数 我有以下 P Invoke 签名 全部用 DllImport 属性装饰 DllImport somedll dll public extern IntPtr getHandleOfA
  • 等值线世界地图

    我读了很多帖子和文章 但不断出现错误 我正在尝试制作一个等值线 使用我从全球恐怖主义数据库获得的数据绘制的世界地图 我想根据击杀次数或仅根据该国家 地区的攻击次数对国家进行着色 我现在不在乎 由于拥有数据的国家太多 因此绘制任何图表来显示这
  • 通过 VIM 选择 Python 函数的最快方法是什么?

    没有任何插件可以吗 或者编辑 python 文件的最佳插件是什么 try vis直观地选择和o跳跃边缘
  • 来自工作人员的错误消息: generic::aborted: SDKharness sdk-0-1 已断开连接

    我的一项 Dataflow 作业遇到一些问题 我有时会收到此错误消息 似乎在这个错误之后 作业一直运行良好 但是 今天晚上它实际上卡住了 或者它开始缓慢地处理元素 您还可以从屏幕截图中看到 工作人员开始表现得非常奇怪 如下面屏幕截图中的 C
  • 您可以在 iPhone/iPad 上的视图之间进行转换的完整列表 [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • gcc execstack 标志到底允许什么情况以及它如何强制执行它?

    我这里有一些示例代码 我用它们来理解初学者 CTF 的一些 C 行为 example c include
  • 两个纬度和经度之间的行进距离

    我正在计算并给出公路旅行的两组纬度和经度之间的距离 我查看了 Google 的方向和距离矩阵 API 并且还做了很多关于SO的其他问题 但我无法找出最好的方法 您需要每次计算到大约 20 25 个位置的距离 我们正在构建一款旅行应用程序 该
  • 显示延迟的网络摄像头/摄像头流 - webrtc

    我做了一个简单的设置 获取网络摄像头 手机摄像头流并将其传递 在 html 2d 画布上绘图 但我一直无法弄清楚如何以几秒钟的延迟显示流 有点像延迟镜 我尝试玩ctx globalAlpha 0 005 但这给了我重影效果而不是 延迟 流
  • 在android中读取EditText的文本

    我正在编写一个简单的 Android 应用程序 它有一个编辑文本和一个按钮 单击按钮应显示一个警报对话框 其中包含在编辑文本中输入的文本 为此 我有以下代码 String txt Called when the activity is fi
  • EMGU QueryFrame 通过 RTSP 返回“条纹”图像

    我有一个高清网络摄像机 我试图通过 rtsp 抓取帧并使用以下代码 in Form Load Application Idle getNextFrame 和事件处理程序 private void getNextFrame object se
  • 如何删除google colab本地上传的文件?

    我正在尝试使用以下代码删除我在 Google colab 上上传的文件 from google colab import files uploaded files upload 现在如何删除该文件 例如 如果文件的名称是 sample jp
  • WorksheetFunction.Transpose 更改数据类型

    我正在使用WorksheetFunction Transpose在 VBA 中将混合日期 字符串的一维数组转换为二维数组以写入工作表 我的 Windows 区域设置设置为DMY 写回的日期有月 日切换 这个论坛里已经提到过Dates正在转换
  • 如何实现一个非常简单的文件系统?

    我想知道操作系统如何读取 写入硬盘 我想作为练习来实现一个简单的文件系统 没有可以读写文件的目录 我从哪说起呢 C C 可以解决这个问题还是我必须采用更底层的方法 一个人处理的事情是否太多了 看看保险丝 http fuse sourcefo
  • Objective-c 多播委托

    我在 xcode 中创建新的选项卡式视图项目 在 appdelegate 中我创建了一个协议 h file protocol myProtocol
  • 在 Java 中从 json 文件中删除 json 对象

    我有一个在线下载的 json 文件 price 1 empty 0 0 0 0 0 lowValue 0 highValue 0 我想删除其中的所有内容 空的 to 我花了几个小时研究正则表达式的东西 但我似乎不知道如何让它做我想做的事情