0

こんにちは、変数の配列をループして、変数JSONObjectArray存在するかどうかを確認する必要があります。作成しない場合は、これを配列に書き戻してから、JSON Objectこれまでに取得したヘレス帽子に戻す必要がありますが、できますに値を書き戻す方法がよくわかりJSON Objectません。

public static void updateLocalDataWithObject(Context activityContext, JSONObject fullNetworkDataFromFile) throws JSONException{

             JSONObject fullNetworkfile = fullNetworkDataFromFile.getJSONObject("data");
             JSONObject tempUserDict = fullNetworkfile.getJSONObject("user");
             String user_pref_club = tempUserDict.getString("primary_club_id");
             Log.v("globals", "3.)user_pref_club = " + user_pref_club);
             JSONObject userClubsDict = fullNetworkfile.getJSONObject("user_clubs");
             Log.v("globals", "userClubsDict = " + userClubsDict);

             if(userClubsDict.length()!= 0){

                 JSONArray userClubsDictKeys = new JSONArray();          
                 userClubsDictKeys=userClubsDict.names();

                 ArrayList<String> stringArray = new ArrayList<String>();
                 for(int i = 0, count = userClubsDictKeys.length(); i< count; i++)
                 {
                     try {
                         JSONObject jsonObject = userClubsDictKeys.getJSONObject(i);
                         stringArray.add(jsonObject.toString());
                     }
                     catch (JSONException e) {
                         e.printStackTrace();
                     }
                 }

                 for(String myString : stringArray){
                     Log.v("globals", "myString = " + myString);

                 }

                 Log.v("globals", "ARRAY userClubsDictKeys = " + userClubsDictKeys);
                 String clubID = userClubsDictKeys.getString(0);
                 Log.v("globals", "clubID = " + clubID);

                 if(user_pref_club =="" || (userClubsDictKeys.getString(0) == null)) user_pref_club = clubID; 

ログアウトされるのはこちらです。機密情報であり、投稿しないように指示されているため、完全なデータを表示することはできません。しかし、私がやろうとしているのは、クラブIDの値をJSONArrayの新しいキーと値のペアに書き込んでから、JSONObjectに戻すことです

03-01 12:00:51.269: V/globals(1085): ARRAY userClubsDictKeys = ["6496","16885"]
03-01 12:00:51.269: V/globals(1085): clubID = 6496


             } 
4

1 に答える 1

2

私があなたを正しく理解しているなら、あなたはJSONArray/JSONObjectに値を追加したいと思います。

JSONArrayに値を追加するには、

JSONArray json = new JSONArray();
json.put(<value>);

-また-

json.put(<index>, <value>);

JSONObjectに値を追加するには、

JSONObject json = new JSONObject();
json.put("<key>", <value>);
于 2013-03-01T12:35:59.517 に答える