java - 使用jackson-mapper解析json文件错误

标签 java android json jackson

我要解析这个json结构

我启发了本教程[如何在 android 中使用 jackson 解析 json 文件][ http://www.tutos-android.com/parsing-json-jackson-android]

"Categorie": [
    {
        "typecategorie" : "Country",
        "valeurcategorie":  ["Afghanistan","Albania","Zambia","Zimbabwe"]
    },
    {
        "typecategorie": "Year",
        "valeurcategorie": ["1911","1912","1913","1960","1961","1962","1963",,"2054"]
    },
    {
        "typecategorie": "Number",
        "valeurcategorie": ["1","2","3","4","5","6","7","8","9","10","11"]
    }]

我用的是这个类

    public class Categorie {

    private String typecategorie;
    private List<String> valeurcategorie;

    public Categorie(){
        super();
        this.typecategorie = "";
        this.valeurcategorie = new ArrayList<String>();
    }

    public Categorie(String typecategorie,ArrayList<String> valeurcategorie ){
        super();
        this.typecategorie = typecategorie;
        this.valeurcategorie.addAll(valeurcategorie);

    }

    public List<String> getValCategorie(){
        return this.valeurcategorie;
    }
    public String gettypecategorie(){
        return typecategorie;
    }
    public void settypecategorie(String typecategorie){
        this.typecategorie = typecategorie;
    }

}

和这个加载我的对象的代码

public void LoadJson(String fileName) {
        try {
            LoadFile(fileName);
            // InputStream inputStream = urlConnection.getInputStream();
            jp = jsonFactory.createJsonParser(jsonFile);
            categories = objectMapper.readValue(jp, Categories.class);
            categorieList = categories.get("categorie");
        } catch (JsonParseException e) {
            e.printStackTrace();
        } catch (IOException e) {
            e.printStackTrace();
        }
    }

但是我得到这个错误代码

org.codehaus.jackson.map.exc.UnrecognizedPropertyException: Unrecognized field "valeurcategorie" (Class fr.lilperso.worldcupquizz.Categorie), not marked as ignorable
 at [Source: /mnt/sdcard/worldCupQuizz/categorie.json; line: 5, column: 24] (through reference chain: fr.lilperso.worldcupquizz.Categorie["valeurcategorie"])

最佳答案

valeurcategorie 需要一个 setter。将此添加到您的 Categories 类:

public void setValeurcategorie(List<String>  valeurcategorie) {
    this.valeurcategorie = valeurcategorie;
}

关于java - 使用jackson-mapper解析json文件错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24591446/

相关文章:

android - 在哪里可以找到 AOSP 项目中 Android HAL 实际实现的源代码?

javascript - 我可以从 android 共享首选项获取网络浏览器内的数据吗?

Java解析未格式化为数组的JSONList

java - Android解析json响应中的特殊字符

java - 如何在 UNIX 中保存多个文件的终端输出?

java - 在 aar 库文件内的布局中获取 inflateException

java - 在 Java 中生成相同的 MD5 哈希值

android - Eclipse android 项目不创建空白 Activity

javascript - 从重定向获取链接

php - 如何在 php-Codeigniter 中向 RESTserver api 发送发布请求?