当前位置: 首页 > news >正文

java读取json文件并解析并修改

要在Java中读取和解析JSON文件,可以使用Java提供的JSON库,例如Jackson、Gson或JSON.simple。以下是使用Jackson库的示例代码:

首先,你需要添加Jackson库的依赖到你的项目中。如果你正在使用Maven,可以在pom.xml文件中添加以下依赖项:

<dependency><groupId>com.fasterxml.jackson.core</groupId><artifactId>jackson-core</artifactId><version>2.12.5</version>
</dependency>
<dependency><groupId>com.fasterxml.jackson.core</groupId><artifactId>jackson-databind</artifactId><version>2.12.5</version>
</dependency>

然后,你可以使用以下代码读取和解析JSON文件:

import com.fasterxml.jackson.databind.ObjectMapper;
import com.fasterxml.jackson.databind.JsonNode;import java.io.File;
import java.io.IOException;public class JsonParser {public static void main(String[] args) {try {// 创建ObjectMapper对象ObjectMapper objectMapper = new ObjectMapper();// 从文件中读取JSON数据File file = new File("path/to/your/file.json");JsonNode jsonNode = objectMapper.readTree(file);// 解析JSON数据String name = jsonNode.get("name").asText();int age = jsonNode.get("age").asInt();// 修改JSON数据((ObjectNode) jsonNode).put("age", age + 1);// 将修改后的JSON数据写入文件objectMapper.writeValue(file, jsonNode);System.out.println("Name: " + name);System.out.println("Age: " + age);} catch (IOException e) {e.printStackTrace();}}
}

在上面的示例中,首先创建了一个ObjectMapper对象,然后使用它来读取JSON文件。读取后的JSON数据存储在JsonNode对象中,你可以使用get方法获取特定字段的值。在示例中,我们获取了”name”和”age”字段的值。

然后,我们通过将JsonNode对象转换为ObjectNode对象来修改JSON数据。我们将”age”字段的值增加了1,然后使用ObjectMapper对象将修改后的JSON数据写回到文件中。

最后,我们打印解析和修改后的JSON数据的值。

这个示例中使用的是Jackson库,你也可以使用其他的JSON库来完成相同的任务。只需根据具体的库和使用的API做一些调整即可。

http://www.lryc.cn/news/279055.html

相关文章:

  • 2024年前端面试中JavaScript的30个高频面试题之基础知识
  • 鸿蒙设备-开发板基础学习(BearPi-HM Micro)
  • Oracle导入导出dump
  • 判断vector、string是否存在某个元素
  • C语言--结构体详解
  • 外卖骑手与行人之间的非零和博弈
  • [AutoSar]基础部分 RTE 06 对runnable的触发和SWC的影响
  • 网络层协议及IP编址与IP路由基础华为ICT网络赛道
  • 基于stm32f4的蓝牙控制小车
  • 基于BP神经网络的租金预测
  • C语言学习记录—进阶作业(通讯录文件版本)
  • 深度学习笔记(四)——TF2构建基础网络常用函数+简单ML分类网络实现
  • GPT function calling v2
  • 【Golang】IEEE754标准二进制字符串转为浮点类型
  • 【开源项目】轻量元数据管理解决方案——Marquez
  • dirty file page
  • HTAP(Hybrid Transactional/Analytical Processing)系统之统一存储的实时之道
  • 【linux】tcpdump 使用
  • 数字图像处理常用算法的原理和代码实现详解
  • Pandas实战100例 | 案例 26: 检测异常值
  • C语言学习NO.11-字符函数strlen,strlen函数的使用,与三种strlen函数的模拟实现
  • Vue3+ts获取props的值并且定义props值的类型的方法。
  • EasyExcel 不使用科学计数发并以千分位展示
  • 【Python机器学习】SVM——调参
  • 网络传输(TCP)
  • MFC模拟消息发送,自定义以及系统消息
  • 并发,并行,线程与UI操作
  • react 6种方式编写样式
  • 计算机找不到msvcr100.dll的多种解决方法分享,轻松解决dll问题
  • 系分笔记数据库反规范化、SQL语句和大数据