当前位置: 首页 > 知识库问答 >
问题:

如何在JsonArray(com.google.gson)中将空字符串转换为null

澹台华晖
2023-03-14

我的JSON对象有一些空值(“”),所以在转换时会抛出错误。

这是我的JSON

{
    "Animals": [
        {
            "id": 6140,
            "Name": ""
        },
        {
            "id": 6144,
            "Name": "Lion"
        }
    ]
}

我的代码:

JsonParser parser=new JsonParser();
JsonArray myarray=parser.parse(json).getAsJsonArray();

我得到的错误是

com.google.gson.stream.malformedjsonexception

在将JSON对象解析为JSONArray时,如何将空字符串值转换为null?

我希望最终结果是

[{id=6140, Name=null},{id=6144, Name="Lion"}] 

共有1个答案

空英逸
2023-03-14

发生这种情况是因为你提供的json不是一个json数组,而是一个json对象

    JsonParser json = new JsonParser();
    JsonObject myJsonObject = json.parse(json).getAsJsonObject();
    JsonArray jsonArray = myJsonObject.getAsJsonArray("Animals");
 类似资料:
  • 问题内容: 我需要将String []转换为JsonArray,但我不知道如何。我是android开发的新手,我想在MySQL数据库中插入通话记录详细信息。因此,从android方面,我得到一个字符串,但是我不知道如何将该字符串转换为Jsonarray。请帮助解决这个问题,谢谢 这是我的Java代码....... 问题答案: 试试这个,

  • 问题内容: 您如何将此String转换为gson.JsonArray? 这是我的代码: 这是将这个Collections字符串转换为JSonArray的方法吗? 问题答案: 要在JSON数组中包含字符串值,必须记住在Java程序中用反斜杠转义双引号。请参见下面的声明。 您在main()方法中的代码可以正常工作。以下只是对main()方法中的代码的微小修改。 最后,请记住在语句“ com.googl

  • 问题内容: 我想问一个有关将a转换为on的问题。这是我从服务器获取的代码。 这就是。 我怎样才能将我拥有的jsonArray转换为StringArray,这样我就可以得到StringArray: 谢谢您的帮助 :) 问题答案: 看一下本教程。您也可以像上面这样解析json:

  • 问题内容: 我从服务器收到以下响应: 我需要将其转换为。有什么帮助吗? 顺便说一句,我尝试了一下,但它不起作用: 我得到错误: 问题答案: 如果您正在谈论在Java库中使用JSON,那么由于您的输入字符串是JSON对象,而不是JSON数组,因此您应该首先使用JSONObject加载它: 之后,您可以使用toJSONArray()将给定的键字符串数组将JSONObject转换为JSONArray:

  • 这个问题的范围是JSON处理的JavaAPI(JSR 353)。 给定一个元素为JsonString的JsonArray,我如何轻松地将其转换为

  • 问题内容: 在这里很难说出要问什么。这个问题是模棱两可,含糊,不完整,过于宽泛或夸张的,不能以目前的形式合理地回答。如需帮助澄清此问题以便可以重新打开, 请访问帮助中心。 7年前关闭。 我从服务器收到以下响应: 我需要将其转换为。有什么帮助吗? 顺便说一句,我尝试了一下,但它不起作用: 我得到错误: 问题答案: 如果您正在谈论在Java库中使用JSON,那么由于您的输入字符串是JSON对象,而不是