This is the json file:{"Type": "File", "File_Name": "tempfile.fasttext", "File_Size": 15}
i use Fastjson to deserialize it and show the items..but
public static void deserializejson(String json){
fileinfo fileinfo2 = JSON.parseObject(json, fileinfo.class);
System.out.println(fileinfo2.getfiletype());
System.out.println(fileinfo2.getFile_Name());
System.out.println(fileinfo2.getfilesize());
}
public class fileinfo {
private String File_Name;
private String Type;
private int File_Size;
public String getFile_Name(){
return File_Name;
}
public String getfiletype(){
return Type;
}
public int getfilesize(){
return File_Size;
}
}
但是它没有返回我的期望,但是
null
null
0
我的代码有什么问题? 请原谅我的英语不好,再次感谢
您需要使用setter函数,JSON需要使用setter才能在解析JSON字符串时注入值。而且您的所有获取方法的格式都不正确。 试试这个:
我认为您的问题出在您用于编写字符串json的语法中。 如果在json字符串和fileInfo类的变量声明中都使用所有小写字母,则反序列化正确完成。我使用下面的Jackson库是工作程序。
输出:数据从json到infoFile.class => tempfile.fasttext