java - 无法将文本文件转换为 json
问题描述
你好,我是杰克逊的新手,我正在尝试将文本文件转换为 JSON,但我的文本文件有问题我不知道文本文件的详细信息应该是什么格式,下面是我的代码
错误:org.codehaus.jackson.map.JsonMappingException:无法识别的字段“员工”(类 test.Employee),在 [来源:C:\Users\Ashwin Utchanah\Desktop\BIOGRID\jsonInput.txt;未标记为可忽略;行:3,列:2]
text file : {"Employee":{"EmpID":1234,"name":"assd","designation":”programmer”,"salary":25000}}
员工等级:
public class Employee {
private int empId;
private String name;
private String designation;
private String department;
private int salary;
public String toString(){
StringBuilder sb = new StringBuilder();
sb.append("************************************");
sb.append("\nempId: ").append(empId);
sb.append("\nname: ").append(name);
sb.append("\ndesignation: ").append(designation);
sb.append("\ndepartment: ").append(department);
sb.append("\nsalary: ").append(salary);
sb.append("\n************************************");
return sb.toString();
}
public int getEmpId() {
return empId;
}
public void setEmpId(int empId) {
this.empId = empId;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getDesignation() {
return designation;
}
public void setDesignation(String designation) {
this.designation = designation;
}
public String getDepartment() {
return department;
}
public void setDepartment(String department) {
this.department = department;
}
public int getSalary() {
return salary;
}
public void setSalary(int salary) {
this.salary = salary;
}
}
主要课程:
public class ObjectToJson {
public static void main(String [] args) {
ObjectMapper mapper = new ObjectMapper();
try {
File jsonInputFile = new File("C:\\Users\\Ashwin Utchanah\\Desktop\\BIOGRID\\jsonInput.txt");
Employee emp = mapper.readValue(jsonInputFile, Employee.class);
System.out.println(emp);
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
解决方案
您尝试转换为具体对象的 JSON 不是有效的。
您可以使用 JSON lint 之类的 JSON 验证器轻松对此进行测试。
问题发生在顶级Employee
字段。将输入文件更改为:
{
"EmpID": 1234,
"name": "assd",
"designation": "programmer",
"salary": 25000
}
应该解决你的问题。
推荐阅读
- android - 如何使用带有 react-native-drive-api-wrapper 的 react native 将图像上传到谷歌驱动器?
- sql - sql server 有没有临时位置保存文件
- visual-studio - Visual Studio 2019 无法加载项目
- ios - 如何在 WKInterfaceLabel 中将 lineBreakMode 设置为自动换行?
- react-native - react-navigation v1 到 v4 升级时出现 navigation.getchildnavigation 错误
- android - Xml 布局在 Kotlin 上被取消分配
- typescript - 如何实例化一个没有空条目的数组数组?
- android - 科尔多瓦项目中 navigator.geolocation 失败的问题
- java - 当 json 属性名称根据请求更改时使用 restTemplate getForObject
- c# - 比较多个列表时删除相同的值