본문 바로가기

Android

[Android] 안드로이드 JsonObject Null 확인하기. +(키 존재 확인 has() )

반응형

앱을 개발하다보면 서버를 통해 Json 형태로 데이터를 받아와야 하는 경우가 많다.

Json Data를 받을 때  Key, Value 형태로 데이터를 제공받는다. 이 때 경우에 따라 데이터가 비어있는 경우 Error 가 발생하게 된다.  이런 경우 사전에 서버로 부터 받은 Json 데이터가 Null 인지 확인하여 처리 할 수 있다. 

 

Stirng result;

result = "서버에서 받아온 JsonObject를 넣어주세요.";
JsonObjtect jsonObject = new JsonObject(result);

if(jsonObject.isNull("키값"))
{
//값이 없는 경우
}
else 
{
//값이 있는 경우 
}

다음과 같이 isNull 을 제공한다. 다음과 같이 키에 해당하는 값이 Null 인지 확인 한 뒤 처리가 가능하다. 위에 예시보다 좀 더 자세한 예시나 실제 활용하는 부분을 더 보고 싶어하시는 분들을 위해 좀 더 다양한 형태로 제공하는 링크를 첨부한다. 

 

https://jeffrey-oh.tistory.com/77

 

JSON Null 값 처리

1 2 3 4 5 6 7 8 9 10 JSONArray item = items.getJSONArray("item"); // rmkKor null 경우 for (int i = 0; i < item.length(); i++) {     JSONObject temp = item.getJSONObject(i);  ..

jeffrey-oh.tistory.com

https://stackoverflow.com/questions/8802236/how-to-compare-null-value-from-the-jsonobject-in-java

 

How to compare null value from the JsonObject in java

stackoverflow member i need some help from you. I am having a JsonObject given below { "Id": null, "Name": "New Task", "StartDate": "2010-03-05T00:00:00", "EndDate": "2010-03-06T00:00:00", "Durat...

stackoverflow.com

 

 

+추가 TIp

추가적으로 내가 가져오고자 하는 값들이 여러개가 있을 떄 해당 Json Value 에 내가 가져오고자 하는 데이터의 Key가 실제로 있는 지 확인이 필요한 경우 has() 함수를 이용하면 내가 받아온 혹은 요청한 Json 데이터 안에 해당 Key가 있는지 확인 할 수 있는 함수가 있다. 사용방법은 위와 같이 jsonobject.has("키") 와 같다. 마찬가지로 더 자세한 사용방법이 있는 게시물을 첨부하므로,  복사하여 사용하거나 좀 더 자세하게 보고 싶은 분들은 아래 링크를 참고하면 됩니다.!

Android 공식 홈 

https://developer.android.com/reference/org/json/JSONObject.html#has(Java.lang.String)

사용 예시

https://www.it-swarm.dev/ko/java/json-%ED%82%A4%EA%B0%80-%EC%9E%88%EB%8A%94%EC%A7%80-%ED%99%95%EC%9D%B8%ED%95%98%EB%8A%94-%EB%B0%A9%EB%B2%95%EC%9D%80-%EB%AC%B4%EC%97%87%EC%9E%85%EB%8B%88%EA%B9%8C/1041143177/

 

java — json 키가 있는지 확인하는 방법은 무엇입니까?

그냥 다른 것을 추가하는 중입니다. JSONObject에서 생성 된 것이 있는지 확인하고 싶다면 길이 ()를 사용할 수 있습니다. 기본적으로 JSONObject가 초기화되고 아무 키도 삽입되지 않았기 때문에 빈 ��

www.it-swarm.dev

 

반응형