java - হওয - ধৈর্যের ফল




একটি জson কী উপস্থিত থাকলে কিভাবে পরীক্ষা করবেন? (6)

JSONObject ক্লাসের "আছে" নামে একটি পদ্ধতি আছে:

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

এই বস্তুর নামের জন্য একটি ম্যাপিং আছে যদি সত্য ফিরে। ম্যাপিং নুল হতে পারে।

সুতরাং, আমি সার্ভার থেকে কিছু JSON মান পেয়েছি কিন্তু কোন নির্দিষ্ট ক্ষেত্র থাকবে কিনা তা আমি জানি না।

তাই মত:

{ "regatta_name":"ProbaRegatta",
  "country":"Congo",
  "status":"invited"
}

এবং কখনও কখনও, একটি অতিরিক্ত ক্ষেত্র হবে যেমন:

{ "regatta_name":"ProbaRegatta",
  "country":"Congo",
  "status":"invited",
  "club":"somevalue"
}

আমি "ক্লাব" নামক ক্ষেত্রটি বিদ্যমান কিনা তা পরীক্ষা করতে চাই যাতে পার্সিংয়ে আমি org.json.JSONException পাই না : ক্লাবের জন্য কোন মূল্য নেই


আপনি JSONObject#has থাকতে পারে, ইনপুট হিসাবে key সরবরাহ করে এবং পদ্ধতিটি true বা JSONObject#has ফেরত কিনা তা পরীক্ষা করে দেখুন। তুমিও পারো

getString পরিবর্তে optString ব্যবহার করুন:

যদি বিদ্যমান থাকে তবে নাম দ্বারা মানচিত্রে মান প্রদান করে, যদি প্রয়োজন হয় তবে এটি coercing করে। কোন ধরনের মানচিত্র বিদ্যমান থাকলে খালি স্ট্রিং প্রদান করে


আপনি যেখানে 'HAS' এই ভাবে চেক করতে পারেন - যদি এই বস্তুর নামটির জন্য একটি মানচিত্র থাকে তবে সত্যটি ফেরত দেয়। ম্যাপিং নুল হতে পারে।

if (json.has("status")) {
   String status = json.getString("status"));
}

if (json.has("club")) {
   String club = json.getString("club"));
}

আপনি 'isNull' ব্যবহার করেও চেক করতে পারেন - যদি এই বস্তুর নামটির জন্য কোন মানচিত্র না থাকে অথবা এটির মানচিত্র থাকে যার মান NULL থাকে তবে সত্যটি ফেরত দেয়।

if (!json.isNull("club"))
    String club = json.getString("club"));

আমি শুধু আরেকটি জিনিস যুক্ত করছি, যদি আপনি কেবল JSONObject এ কিছু তৈরি করা হয় কিনা তা পরীক্ষা করতে চান বা আপনি দৈর্ঘ্য () ব্যবহার করতে পারেন না, কারণ ডিফল্টভাবে JSONObject শুরু হয়ে গেলে এবং কোনও কী সন্নিবেশ করা হয় না, এটি কেবল খালি ধনুর্বন্ধনী {} এবং ব্যবহার করে (স্ট্রিং কী) কোন ধারনা করে না।

সুতরাং যদি আপনি সরাসরি লিখতে if (jsonObject.length() > 0) এবং আপনার জিনিসগুলি করুন।

শুভ শিক্ষা!


এটা চেষ্টা কর

if(!jsonObj.isNull("club")){
    jsonObj.getString("club");
}

শুধু পড়া আগে এটি পড়া আগে মত চেক

JSONObject json_obj=new JSONObject(yourjsonstr);
if(!json_obj.isNull("club"))
{
  //it's contain value to be read operation
}
else
{
  //it's not contain key club or isnull so do this operation here
}

isNull ফাংশন সংজ্ঞা

Returns true if this object has no mapping for name or
if it has a mapping whose value is NULL. 

isNull ফাংশন জন্য নীচের লিংক অফিসিয়াল ডকুমেন্টেশন

http://developer.android.com/reference/org/json/JSONObject.html#isNull(java.lang.String)





json