Convertir des tableaux Java ou ArrayList normaux en Json Array dans Android

Existe-t-il un moyen de convertir un tableau Java ou ArrayList normal en un tableau Json dans Android pour transmettre l’object JSON à un service Web?

Si vous voulez ou devez travailler avec un tableau Java, vous pouvez toujours utiliser la méthode statique asList() des classes de l’utilitaire java.util.Arrays pour convertir votre tableau en une List .

Quelque chose dans ce sens devrait fonctionner.

 Ssortingng mSsortingngArray[] = { "Ssortingng1", "Ssortingng2" }; JSONArray mJSONArray = new JSONArray(Arrays.asList(mSsortingngArray)); 

Attention, le code est écrit de manière désinvolte, donc considérez-le comme un pseudo-code.

 ArrayList list = new ArrayList(); list.add("blah"); list.add("bleh"); JSONArray jsArray = new JSONArray(list); 

Ceci est seulement un exemple utilisant une arraylist de chaîne

vous avez besoin d’une bibliothèque externe

  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 est la meilleure bibliothèque http://code.google.com/p/google-gson/

example key = “Name” value = “Xavier” et la valeur dépend du nombre de tableaux que vous passez dans

  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) { } 

Pour un simple tableau java, vous devriez essayer

 Ssortingng arr_str [] = { "value1`", "value2", "value3" }; JSONArray arr_strJson = new JSONArray(Arrays.asList(arr_str)); System.out.println(arr_strJson.toSsortingng()); 

Si vous avez un ArrayList générique de type Ssortingng comme ArrayList . alors vous devriez essayer

  ArrayList 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()); 

Ceci est la syntaxe correcte:

 Ssortingng arlist1 [] = { "value1`", "value2", "value3" }; JSONArray jsonArray1 = new JSONArray(arlist1);