java - Java中的JSON从字符串到字符串数组的映射
问题描述
我有一个类 pojo 类
class A{
private List<String> colors;
// getters and setters.
}
数据采用 json 格式。
来自数据库的数据是----A {"colors":""}
数据应输入 - A{"colors":["red"]}。
这里的问题是,java 无法将{"colors":""}
字符串中的数据转换为数组{"colors":["red"]}
。因此,我得到了InputMismatchException
.
有什么办法可以转换{"colors":""}
成{"colors":["red"]}
?
我想知道如何在java中处理这个。
我正在使用杰克逊解析器将 json 转换为 java 对象。
解决方案
您想要的基本上是从 json 文件中加载颜色。假设 json 文件名为“colors.json”。您应该做的是使用可以从文件中读取并使用 json 对象的现有第三方 java 库之一。例如,您可以使用“org.json.simple”库。示例可以在这里找到: https ://www.mkyong.com/java/json-simple-example-read-and-write-json/
将文件“colors.json”读入 JSONParser 后,您将获得一个 JSONObject。使用此对象,您可以通过编写以下内容获取颜色列表:
JSONArray colors = (JSONArray) obj.get("colors");
Iterator<String> iterator = msg.iterator();
while (iterator.hasNext()) {
String color = (String) iterator.next();
// add color to collor's list here:
...
}
推荐阅读
- node.js - 重置密码令牌 nodejs 和 express, throw er; // 未处理的“错误”事件 ^ 错误:回调已被调用
- firebase - 使用 expo 权限反应原生 firebase 推送通知
- c++ - 我如何解决这个没有匹配的函数来调用'stoi(int&)'|
- reactjs - 如何将 webpack 配置为代码拆分小型静态反应页面
- reactjs - React JS 登录和路由器未按预期工作
- android - 为什么 FingerprintManager.AuthenticationCallback 在前台服务中没有响应?
- kaitai-struct - kaitai-struct-compiler 生成与 webIDE 不同的文件
- api - 如何解决 HTTPError: 400 Client Error: Bad Request for URL inRobot Frame work
- git - mkdir: 无法创建目录 '/dev/shm': 只读文件系统
- c# - 在 Discord Rich Embed 上显示字节数组图像