Преобразование нормального массива Java или ArrayList в Json Array в android

Есть ли способ конвертировать обычный Java-массив или ArrayList в Json Array в Android для передачи объекта JSON в веб-сервис?

Solutions Collecting From Web of "Преобразование нормального массива Java или ArrayList в Json Array в android"

Если вам нужно или нужно работать с массивом Java, вы всегда можете использовать метод static asList() утилиты java.util.Arrays для преобразования вашего массива в List .

Что-то в этом направлении должно работать.

 String mStringArray[] = { "String1", "String2" }; JSONArray mJSONArray = new JSONArray(Arrays.asList(mStringArray)); 

Остерегайтесь того, что код написан небрежно, поэтому рассмотрите его как псевдокод.

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

Это всего лишь пример использования строкового массива

Вам нужна внешняя библиотека

  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/

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

Для простого массива String Java необходимо попробовать

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

Если у вас есть общий массив ArrayList типа String, такой как ArrayList<String> . То вы должны попробовать

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