web-dev-qa-db-ja.com

Javaの通常のandroid配列またはArrayListをJson配列に変換します

JSONオブジェクトをWebサービスに渡すために、通常のJava配列またはArrayListをAndroidのJson配列に変換する方法はありますか?

59
jennifer

Java配列を使用したい、または使用する必要がある場合は、Java.util.Arraysユーティリティクラスのstatic asList() メソッドを使用して、配列をListにいつでも変換できます。

これらの線に沿って何かが動作するはずです。

String mStringArray[] = { "String1", "String2" };

JSONArray mJSONArray = new JSONArray(Arrays.asList(mStringArray));

コードはオフハンドで記述されていることに注意してください。そのため、擬似コードと見なしてください。

104
ArrayList<String> list = new ArrayList<String>();
list.add("blah");
list.add("bleh");
JSONArray jsArray = new JSONArray(list);

これは、文字列配列リストを使用した例にすぎません

36
Reno

外部ライブラリが必要です

 json-lib-2.2.2-jdk15.jar

List mybeanList = new ArrayList();
mybeanList.add("S");
mybeanList.add("b");

JSONArray jsonA = JSONArray.fromObject(mybeanList);
System.out.println(jsonA);

Google Gsonは最高のライブラリです http://code.google.com/p/google-gson/

8
Dead Programmer

例key = "Name" value = "Xavier"および値は、渡す配列の数に依存します

 try
      {
      JSONArray jArry=new JSONArray();
      for (int i=0;i<3;i++)
      {
       JSONObject jObjd=new JSONObject();
       jObjd.put("key", value);
       jObjd.put("key", value);
       jArry.put(jObjd);
      }
      Log.e("Test", jArry.toString());
      }
 catch(JSONException ex)
     {

     }
8
Shivputra N

単純なJava String配列の場合は、試してください

String arr_str [] = { "value1`", "value2", "value3" };

JSONArray arr_strJson = new JSONArray(Arrays.asList(arr_str));
System.out.println(arr_strJson.toString());

ArrayList<String>のようなString型のGeneric ArrayListがある場合。その後、あなたは試してみてください

 ArrayList<String> obj_list = new ArrayList<>();
    obj_list.add("value1");
    obj_list.add("value2");
    obj_list.add("value3");
  JSONArray arr_strJson = new JSONArray(obj_list));
  System.out.println(arr_strJson.toString());
5
Vikrant Kashyap

これは正しい構文です。

String arlist1 [] = { "value1`", "value2", "value3" };
JSONArray jsonArray1 = new JSONArray(arlist1);
5
david m lee