Notice
Recent Posts
Recent Comments
Link
투케이2K
82. (AndroidStudio/android/java) json 데이터 저장 및 파싱 (JSONArray 저장 / JSONArray 파싱) 본문
Android
82. (AndroidStudio/android/java) json 데이터 저장 및 파싱 (JSONArray 저장 / JSONArray 파싱)
투케이2K 2021. 3. 5. 16:10/* =========================== */
[ 개발 환경 설정 ]
개발 툴 : AndroidStudio
개발 언어 : java
/* =========================== */
/* =========================== */
[소스 코드]
//========== [java - json 파일 생성] ==========
public void setJsonArrayData(){
try {
//TODO JSONArray 객체 생성 및 데이터 삽입 실시
JSONArray jsonArray = new JSONArray();
jsonArray.put("ONE_INFO");
JSONObject jsonObject_One = new JSONObject();
jsonObject_One.put("name", "투케이");
jsonArray.put(jsonObject_One.toString());
jsonArray.put("TWO_INFO");
JSONObject jsonObject_Two = new JSONObject();
jsonObject_Two.put("name", "케이투");
jsonArray.put(jsonObject_Two.toString());
//TODO 저장된 JSONObject 데이터 출력 실시
jsonData = jsonArray.toString(); //데이터 파싱 위해서 변수에 담습니다
Log.d("---","---");
Log.d("//===========//","================================================");
Log.d("","\n"+"[A_Main > setJsonArrayData() 메소드 : 기본 JSONArray 형태 데이터 생성 실시]]");
Log.d("","\n"+"[저장된 데이터 : "+String.valueOf(jsonArray.toString())+"]");
Log.d("//===========//","================================================");
Log.d("---","---");
}
catch (Exception e){
e.printStackTrace();
}
}
//========== [java - json 파일 파싱] ==========
public void getJsonArrayDataParse(){
try {
//TODO 초기 저장된 데이터를 JSONArray에 담는다
JSONArray jsonArrayParse = new JSONArray(jsonData);
Log.d("---","---");
Log.d("//===========//","================================================");
Log.d("","\n"+"[A_Main > getJsonArrayDataParse() 메소드 : 기본 JSONArray 형태 데이터 파싱 실시]]");
Log.d("","\n"+"[저장된 데이터 : "+String.valueOf(jsonArrayParse.toString())+"]");
Log.d("//===========//","================================================");
Log.d("---","---");
//TODO 필요한 JSONArray 데이터를 파싱한다
String name = "";
for(int i=0; i<jsonArrayParse.length(); i++) {
String data = String.valueOf(jsonArrayParse.get(i)); //TODO 데이터 string 형태 저장
if(data.contains("name")){ //TODO 데이터 값이 name 이란 값을 가지고 있는 경우 (즉, jsonObject 형태인 경우)
JSONObject jsonObject = new JSONObject(data);
name = String.valueOf(jsonObject.get("name"));
Log.d("---","---");
Log.d("//===========//","================================================");
Log.d("","\n"+"[A_Main > getJsonArrayDataParse() 메소드 : 기본 JSONArray 형태 데이터 파싱 실시]]");
Log.d("","\n"+"[파싱 name : "+String.valueOf(name)+"]");
Log.d("//===========//","================================================");
Log.d("---","---");
}
else{
Log.d("---","---");
Log.d("//===========//","================================================");
Log.d("","\n"+"[A_Main > getJsonArrayDataParse() 메소드 : 기본 JSONArray 형태 데이터 파싱 실시]]");
Log.d("","\n"+"[파싱 일반 : "+String.valueOf(data)+"]");
Log.d("//===========//","================================================");
Log.d("---","---");
}
}
}
catch (Exception e){
e.printStackTrace();
}
}
/* =========================== */
[결과 출력]
/* =========================== */
반응형
'Android' 카테고리의 다른 글
Comments