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

我可以从Kotlin中的同一个json对象获得json对象的名称吗?

微生令
2023-03-14

我尝试使用json对象更新sharePreference值。首先创建带有name的json对象,然后在SharedPreference中更新该对象。但是,我无法获得json对象名。请帮帮我.

 team1.put("name", "India")
 updateData(team1)

 private fun updateData(data: JSONObject) {
    val sharedPref: SharedPreferences = getSharedPreferences("SharedPref1", 0)
    val editor:SharedPreferences.Editor =  sharedPref.edit()
    editor.putString("JSONObjectName",data.toString()) // How to get the JSONObject name?

} 

我想像这个,data.name==team1

共有1个答案

应向晨
2023-03-14

参考您的代码,您希望获得名为'name'的属性。对吧?

你必须这样做:

private fun updateData(data: JSONObject) {

    val name = data.getString("name")

    val sharedPref: SharedPreferences = getSharedPreferences("SharedPref1", 0)
    val editor:SharedPreferences.Editor =  sharedPref.edit()

    editor.putString("JSONObjectName", name)
}

在访问JSONObject之前,不要忘记检查它是否包含一个名为'name'的属性,以避免崩溃;)

 类似资料:
  • 问题内容: 这是我要在这里实现的目标: 从数据库获取文件名和ID的列表 在网络路径上搜索这些文件 存储未找到的文件的任何ID 在第二个数据库中搜索该ID 在网络路径上搜索这些文件 列出所有在两个位置均未找到文件的ID。 我遇到的问题是尝试使用我收集的结果中的文件名。 运行代码时,会显示从数据库收集的原始JSON数据,但是当尝试仅列出文件名时,我什么也没得到(甚至没有错误) 关于如何解决此问题并以一

  • 我有这样的json数组 我想得到

  • 我有一个这样的JSON文件: 我想得到这3个对象的名称:,,。 我已经这么做了: 调用这个类: 我得到这个作为输出,所以它的工作原理: 输出 我的问题是,我只能通过修改PoliciesTest类中相应名称的JSON属性来逐个访问这3个对象,除非我希望同时将这3个对象作为输出,并且不能重载@JSONProperty。 以前有人面对过这个问题吗?

  • 我试图使用Jackson将JSON blob转换为实例化Java类对象的列表。只要JSON保持不变,这就相当简单了。但是,从服务器返回的每个JSON对象都以唯一的UUID开始,这意味着每个对象都是不同的。是这样的: 请注意,每个JSON对象都以不同的名称开头。如果每个JSON对象都使用相同的名称(如“数据”)而不是UUID启动,那么这将是一个骗局。现在我得到了以下异常: JAVAlang.Runt

  • 问题内容: 我有以下JSON: 我拼命尝试访问动态对象名称,如,该怎么办? 现在我有: 问题答案: 我可以想象,最简单的方法是解码为关联数组而不是stdClass对象

  • 问题内容: 我有一个网址,返回的是这样的JSON对象: 我想获得价值。那么如何通过PHP检索它呢? 问题答案: $json = file_get_contents(‘url_here’); $obj = json_decode($json); echo $obj->access_token; 为此,需要启用它。可以通过在运行时完成以下操作来实现: 您也可以使用获取网址。要使用卷曲,可以使用中发现的