투케이2K

81. (AndroidStudio/android/java) json 데이터 저장 및 파싱 (JSONObject 저장 / JSONObject 파싱) 본문

Android

81. (AndroidStudio/android/java) json 데이터 저장 및 파싱 (JSONObject 저장 / JSONObject 파싱)

투케이2K 2021. 3. 5. 15:37
반응형

/* =========================== */

[ 개발 환경 설정 ]

개발 툴 : AndroidStudio

개발 언어 : java

/* =========================== */

/* =========================== */

[소스 코드]

 

//========== [java - json 파일 생성] ==========
public void setDefaultJsonData(){
	try {
		//TODO JSONObject 객체 생성 및 데이터 삽입 실시
		JSONObject jsonObject = new JSONObject();
		jsonObject.put("name", "투케이");
		jsonObject.put("age", 28);
		jsonObject.put("man", true);

		//TODO 저장된 JSONObject 데이터 출력 실시
		jsonData = jsonObject.toString(); //데이터 파싱 위해서 변수에 담습니다
		Log.d("---","---");
		Log.d("//===========//","================================================");
		Log.d("","\n"+"[A_Main > setDefaultJsonData() 메소드 : 기본 JsonObject 형태 데이터 생성 실시]]");
		Log.d("","\n"+"[저장된 데이터 : "+String.valueOf(jsonObject.toString())+"]");
		Log.d("//===========//","================================================");
		Log.d("---","---");
	}
	catch (Exception e){
		e.printStackTrace();
	}
}






//========== [java - json 파일 파싱] ==========
public void getDefaultJsonDataParse(){
	try {
		//TODO 초기 저장된 데이터를 JSONObject에 담는다
		JSONObject jsonObject = new JSONObject(jsonData);
		Log.d("---","---");
		Log.d("//===========//","================================================");
		Log.d("","\n"+"[A_Main > getDefaultJsonDataParse() 메소드 : 기본 JsonObject 형태 데이터 파싱 실시]]");
		Log.d("","\n"+"[저장된 데이터 : "+String.valueOf(jsonObject.toString())+"]");
		Log.d("//===========//","================================================");
		Log.d("---","---");

		//TODO 필요한 JSONObject 데이터를 파싱한다
		String name = "";
		String age = "";
		String man = "";

		if(jsonObject.has("name") == true){ //TODO JSON 데이터에서 name 이란 key 값이 존재하는 경우
			name = String.valueOf(jsonObject.get("name")); //TODO name 키값 데이터를 가져온다
		}
		if(jsonObject.has("age") == true){ //TODO JSON 데이터에서 name 이란 key 값이 존재하는 경우
			age = String.valueOf(jsonObject.get("age")); //TODO name 키값 데이터를 가져온다
		}
		if(jsonObject.has("man") == true){ //TODO JSON 데이터에서 name 이란 key 값이 존재하는 경우
			man = String.valueOf(jsonObject.get("man")); //TODO name 키값 데이터를 가져온다
		}

		Log.d("---","---");
		Log.d("//===========//","================================================");
		Log.d("","\n"+"[A_Main > getDefaultJsonDataParse() 메소드 : 기본 JsonObject 형태 데이터 파싱 실시]]");
		Log.d("","\n"+"[파싱 name : "+String.valueOf(name)+"]");
		Log.d("","\n"+"[파싱 age : "+String.valueOf(age)+"]");
		Log.d("","\n"+"[파싱 man : "+String.valueOf(man)+"]");
		Log.d("//===========//","================================================");
		Log.d("---","---");
	}
	catch (Exception e){
		e.printStackTrace();
	}
}

/* =========================== */

[결과 출력]

/* =========================== */

반응형
Comments