programing

Android에서 일반 Java 어레이 또는 ArrayList를 Json 어레이로 변환

fastcode 2023. 3. 6. 21:30
반응형

Android에서 일반 Java 어레이 또는 ArrayList를 Json 어레이로 변환

일반 Java 어레이를 변환하는 방법은 없습니까?ArrayListJSON 개체를 웹 서비스에 전달하려면 어떻게 해야 합니까?

Java 어레이를 사용하거나 Java 어레이를 사용해야 하는 경우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);

이것은 문자열 배열 목록을 사용하는 예에 불과합니다.

예제 키 = "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)
     {

     }

외부 라이브러리가 필요합니다.

 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/

올바른 구문은 다음과 같습니다.

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

심플한 Java의 경우String시도해 보는 어레이

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

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

String과 같은 유형의 Generic ArrayList가 있는 경우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());

어레이를 Json으로 변환하기 위한 코드

코드

List<String>a = new ArrayList<String>();
a.add("so 1");
a.add("so 2");
a.add("so 3");
JSONArray jray = new JSONArray(a);

System.out.println(jray.toString()); 

산출량

["so 1","so 2","so 3"]

ArrayList를 JsonArray로 변환 : 다음과 같이 [{"title":"value1"}, {"title":"value2"}]

다음 예:

하나의 매개 변수 제목과 재정의 toString 메서드를 가진 모델 클래스

class Model(
    var title: String,
    var id: Int = -1
){
    
    override fun toString(): String {
        return "{\"title\":\"$title\"}"
    }
}

모델 클래스 목록을 만들고 문자열로 인쇄

var list: ArrayList<Model>()
list.add("value1")
list.add("value2")
Log.d(TAG, list.toString())

그리고 여기 당신의 결과물이 있습니다.

[{"title":"value1"}, {"title":"value2"}]

언급URL : https://stackoverflow.com/questions/5166592/convert-normal-java-array-or-arraylist-to-json-array-in-android

반응형