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
'programing' 카테고리의 다른 글
| Oracle에서 PL/SQL Stored Function 본문을 표시하는 방법 (0) | 2023.03.06 |
|---|---|
| 케이스 클래스에 스칼라 열거가 포함되어 있는 경우 MongoCaseClassField를 사용하여 Mongo 레코드를 갱신하는 방법 (0) | 2023.03.06 |
| TS를 사용하는 Redx DevTools 확장과 관련된 오류: "속성 '_REDUX_DEVTOOLS_EXTION_COMPOSE__'이(가) '윈도' 유형에 없습니다." (0) | 2023.03.01 |
| React에서 하위 상태의 상위 상태 액세스 (0) | 2023.03.01 |
| 릴레이셔널 데이터베이스의 행을 삭제해야 합니까, 비활성화해야 합니까? (0) | 2023.03.01 |