Notice
Recent Posts
Recent Comments
Link
투케이2K
535. (Android/Java) [유틸 파일] jsonPrettyPrint : json 형식 문자열 데이터 GSON 정렬 출력 본문
Android
535. (Android/Java) [유틸 파일] jsonPrettyPrint : json 형식 문자열 데이터 GSON 정렬 출력
투케이2K 2023. 4. 8. 23:13[개발 환경 설정]
개발 툴 : AndroidStudio
[소스 코드]
// -----------------------------------------------------------------------------------------
// TODO [SEARCH FAST] : [VOID] jsonPrettyPrint : json 형식 문자열 데이터 GSON 정렬 출력
// -----------------------------------------------------------------------------------------
public static String jsonPrettyPrint(String json){
/**
* // -----------------------------------------
* [jsonPrettyPrint 메소드 설명]
* // -----------------------------------------
* 1. json 형식 문자열 데이터 GSON 정렬 출력
* // -----------------------------------------
* 2. 호출 방식 :
// [샘플 JSON 선언 실시]
JSONObject jsonObject = new JSONObject();
jsonObject.put("name", "twok");
jsonObject.put("age", "29");
// [메소드 호출]
C_Util.jsonPrettyPrint(jsonObject.toString());
* // -----------------------------------------
* 3. 리턴 데이터 : JSON 정렬 데이터
* // -----------------------------------------
* 4. 라이브러리 설치 : Gson
* // -----------------------------------------
* */
// [리턴 변수 선언]
String returnData = "";
String M_LOG = "";
// [로직 처리 실시]
try {
// [널 체크 수행 실시]
if (C_Util.stringNotNull(json) == true){
// [JSON 형식으로 파싱 가능 한지 확인]
if (C_Util.stringJsonObjectEnable(json) == true){
// [JSON 으로 변환 실시]
JSONObject jsonObject = new JSONObject(json);
// [JSON TO MAP 변환 실시 : nameValuePairs 이슈]
Map map = C_Util.jsonStringToMap(jsonObject.toString());
// [GSON 사용해 jsonString to Map 변환]
Gson gson = new Gson().newBuilder().setPrettyPrinting().create();
returnData = gson.toJson(map);
// [로그 삽입]
M_LOG = "[SUCCESS] : JSON PRINT";
}
else {
M_LOG = "[ERROR] : JSON TYPE ERROR";
}
}
else {
M_LOG = "[ERROR] : INPUT DATA IS NULL";
}
}
catch (Exception e){
e.printStackTrace();
M_LOG = "[EXCEPTION] : " + String.valueOf(e.getMessage());
}
// [로그 출력 실시]
//*
S_Log.ltd("================================================");
S_Log.cnt("["+ACTIVITY_NAME+" >> "+C_Util.getNowMethod(1)+" :: json 형식 문자열 데이터 GSON 정렬 출력]");
S_Log.cnt("-----------------------------------------");
S_Log.cnt("[INPUT :: "+String.valueOf(json)+"]");
S_Log.cnt("-----------------------------------------");
S_Log.cnt("[M_LOG :: "+String.valueOf(M_LOG)+"]");
S_Log.cnt("-----------------------------------------");
S_Log.cnt("[RETURN]");
S_Log.cnt("-----------------------------------------");
S_Log.cnt("\n"+String.valueOf(returnData)+"\n");
S_Log.lbd("================================================");
// */
// [리턴 반환 실시]
return returnData;
}
[결과 출력]
D///===========//: ================================================
I/: [C_Util >> jsonPrettyPrint :: json 형식 문자열 데이터 GSON 정렬 출력]
I/: -----------------------------------------
I/: [INPUT :: {"name":"twok","age":"29"}]
I/: -----------------------------------------
I/: [M_LOG :: [SUCCESS] : JSON PRINT]
I/: -----------------------------------------
I/: [RETURN]
I/: -----------------------------------------
I/: {
"name": "twok",
"age": "29"
}
D///===========//: ================================================
반응형
'Android' 카테고리의 다른 글
Comments