相关疑难解决方法(0)

使用Java访问JSONArray中的项成员

我刚刚开始在java中使用json.我不确定如何在JSONArray中访问字符串值.例如,我的json看起来像这样:

{
  "locations": {
    "record": [
      {
        "id": 8817,
        "loc": "NEW YORK CITY"
      },
      {
        "id": 2873,
        "loc": "UNITED STATES"
      },
      {
        "id": 1501
        "loc": "NEW YORK STATE"
      }
    ]
  }
}
Run Code Online (Sandbox Code Playgroud)

我的代码:

JSONObject req = new JSONObject(join(loadStrings(data.json),""));
JSONObject locs = req.getJSONObject("locations");
JSONArray recs = locs.getJSONArray("record");
Run Code Online (Sandbox Code Playgroud)

此时我可以访问"记录"JSONArray,但我不确定如何在for循环中获取"id"和"loc"值.对不起,如果这个描述不太清楚,我对编程有点新意.

java arrays json

114
推荐指数
2
解决办法
33万
查看次数

从JSONArray获取特定值

noob Android/JSON的人在这里.我希望有人可以帮助我?

看了看,并期待,但不认为这是我后.我整天都在研究这个项目,所以也许我的大脑刚刚开始变得糊涂......如果这已经过了其他地方请指点我那样:)

无论如何,我希望从JSONArray中获取一个特定的对象 - 这是到目前为止发生的事情:

  JSONArray jArray = new JSONArray(result);
                for(int i=0;i<jArray.length();i++){
                        JSONObject json_obj = jArray.getJSONObject(i);

                        name = json_obj.getString("txt_title");

                }

                txt_title.setText(name);
Run Code Online (Sandbox Code Playgroud)

据我所知,result返回整个JSONArray,然后我使用for loop和获取json对象来查看这些结果的长度.目前我只是要求"txt_title"数组中的值.到现在为止还挺好?

然后我想要做的是,只说"txt_title"从数组中设置第三个值.

目前我希望txt_title.setText(name)显示所有标题,"txt_title"但它只显示数组中的最后一个标题.这可能与for loop?有关?

我该如何选择显示哪个对象?

arrays android json object

5
推荐指数
1
解决办法
4万
查看次数

读取以[并以]结尾的JSON数据

我正在使用带有NetBeans插件的Java,称为CODAPPS来检索,解析和显示JSON数据.

我正在关注使用Google Firebase数据库生成的JSON数据的示例,但我使用的是SlashDB.

出于某种原因,来自SlashDB的JSON数据分别以[和开头和结尾].

我收到以下错误:

org.json.JSONException: A JSONObject text must begin with '{' at 1 [character 2 line 1]
    at org.json.JSONTokener.syntaxError(JSONTokener.java:433)
    at org.json.JSONObject.<init>(JSONObject.java:198)
    at org.json.JSONObject.<init>(JSONObject.java:325)
    at userclasses.StateMachine.onMain_ButtonAction(StateMachine.java:80)
    at generated.StateMachineBase.handleComponentAction(StateMachineBase.java:572)
    at com.codename1.ui.util.UIBuilder$FormListener.actionPerformed(UIBuilder.java:2831)
    at com.codename1.ui.util.EventDispatcher.fireActionEvent(EventDispatcher.java:345)
    at com.codename1.ui.Button.fireActionEvent(Button.java:411)
    at com.codename1.ui.Button.released(Button.java:442)
    at com.codename1.ui.Button.pointerReleased(Button.java:530)
    at com.codename1.ui.Form.pointerReleased(Form.java:2578)
    at com.codename1.ui.Form.pointerReleased(Form.java:2514)
    at com.codename1.ui.Component.pointerReleased(Component.java:3119)
    at com.codename1.ui.Display.handleEvent(Display.java:2017)
    at com.codename1.ui.Display.edtLoopImpl(Display.java:1065)
    at com.codename1.ui.Display.mainEDTLoop(Display.java:994)
    at com.codename1.ui.RunnableWrapper.run(RunnableWrapper.java:120)
    at com.codename1.impl.CodenameOneThread.run(CodenameOneThread.java:176)
Picked up _JAVA_OPTIONS: -Xmx4G
BUILD SUCCESSFUL (total time: 15 seconds)
Run Code Online (Sandbox Code Playgroud)

我的JSON数据如下所示:

[
    {
        "description": "Example Fast Festival Motorcycle with Boho Beading", …
Run Code Online (Sandbox Code Playgroud)

java json codenameone slashdb

2
推荐指数
1
解决办法
507
查看次数

标签 统计

json ×3

arrays ×2

java ×2

android ×1

codenameone ×1

object ×1

slashdb ×1