【问题标题】:How can i remove redundant brackets from my output JSONFILE?如何从输出 JSONFILE 中删除多余的括号?
【发布时间】:2021-10-07 10:38:41
【问题描述】:

我正在使用维护 java 键值顺序的 maeven 依赖项,但问题是当我使用 jsonArray 时显示双括号。谁能告诉我我的错误在哪里。

mssgErreurResult() 是一种返回包含我所有错误消息的 Arraylist 的方法。试想一下,JsonFile 中的Errors ... 就是那个方法的返回

我得到了什么:

{
  "complet": false,
  "erreurs": [
    [
   "Errors ..."
    ]
  ]
}

我想要什么:

{
  "complet": false,
  "erreurs":[
   "Errors ..."
    ]
}

我使用的方法:

public void ecrireFichierJSon(String fichierSortie) throws
            FichierJsonInvalideException, org.codehaus.jettison.json.JSONException {

        org.codehaus.jettison.json.JSONObject completOrNot = new org.codehaus.jettison.json.JSONObject();
        completOrNot.put("complet", mssgErreurResult().size() <= 0);
        org.codehaus.jettison.json.JSONArray messagesErreur = new org.codehaus.jettison.json.JSONArray();
        messagesErreur.put(mssgErreurResult());
        completOrNot.put("erreurs", messagesErreur);

        try {
            Files.write(Paths.get(fichierSortie), completOrNot.toString().getBytes());
        } catch (IOException e) {
            throw new FichierJsonInvalideException(e.toString());
        }
    }

【问题讨论】:

  • 什么是mssgErreurResult()?
  • @LHCHIN mssgErreurResult() 是一种返回包含我所有错误消息的 Arraylist 的方法。试想一下,JsonFile 中的Errors ... 就是那个方法的返回

标签: java json dependencies


【解决方案1】:

org.codehaus.jettison.json.JSONArray messagesErreur 添加了额外的 [ ... ],尝试将其删除并改用以下内容

completOrNot.put("erreurs", mssgErreurResult());

【讨论】:

    猜你喜欢
    • 2017-10-04
    • 2023-03-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-01-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多