JSON مخفف JavaScript Object Notation است، طراحی سایت در مشهد که حالتی غیروابسته از داده و شایسته ترین گزینش برای XML است.
این نوشتهعلمی توضیح میدهد رایاپارس که چه طور یک پوشه JSON را تجزیه کرده و داده ها موردنیاز را از آن حصول کنیم.
اندروید چهار تیم متفاوت برای اجرای داده ی JSON ارائه میدهد که عبارتند از:
JSONArray
JSONObject
JSONStringer
JSONTokenizer .
اولی مرحله معلوم کردن فیلد هایی در داده ی JSON میباشد .
در JSON ارائه گردیده در تحت ، ahrefs صرفا علاقمند به تصاحب کردن دما هستیم.
{
\"sys\":
{
\"country\":\"GB\",
\"sunrise\":1381107633,
\"sunset\":1381149604
},
\"weather\":[
{
\"id\":711,
\"main\":\"Smoke\",
\"description\":\"smoke\",
\"icon\":\"50n\"
}
],
\"main\":
{
\"temp\":304.15,
\"pressure\":1009,
}
}
المان های های JSON :
یک فولدر JSON دارنده مولفه های اکثری میباشد. در اینجا جدول مولفه های JSON و تعریف و تمجید آنانرا مشاهده میکنید :
([)Array : در یک فولدر JSON کروشه ( [ ) نماد دهنده ی یک ستون JSON میباشد.
({ )Objects : در یک فایل JSON این علامت (}) آرم دهنده ی یک آبجکت JSON میباشد.
Key : یک آبجکت JSON کلیدی میباشد که صرفا یک حرفه است. جفت های کلید/مقدار(value/key) یک آبجکت JSON را تشکیل میدهند.
Value : هر کلید میتواند یه خرده داشته باشد کهاین مقدار میتواند حرفه ، integer یا این که double یا این که غیره باشد
تجزیه ی JSON :
برای تجزیه ی JSON یک آبجکت از کلاس JSONObject تولید خواهیم کرد و یک فن (string ) مشمول داده ی JSON برای آن معین میکنیم.
سینتکس آن مانند پایین است.
String in;
JSONObject reader = new JSONObject(in);
واپسین مرحله ، تجزیه ی JSON میباشد. یک فولدر JSON مشتمل بر آبجکت های گوناگون با جفت های متفاوت key/value و غیره میشود. براین اساس JSONObject دارنده تابع جدا از هم برای تجزیه ی هر مولفه از پوشه JSON میباشد. سینتکس آن به صورت پایین میباشد :
JSONObject sys = reader.getJSONObject(\"sys\");
country = sys.getString(\"country\");
JSONObject main = reader.getJSONObject(\"main\");
temperature = main.getString(\"temp\");
روال getJSONObject آبجکت JSON را گزارش میدهد. نحوه getString مقدار فن ی یک کلید معلوم را گزارش میدهد (return می نماید ) .
ضمن این اسلوب ها، سیاق های دیگری برای تجزیه ی خوب JSON به وسیله این کلاس ارائه میگردند که میتوانید در لیست پایین ملاحظه کنید :
(get(String name : این روال تنها مقدار را return می نماید، البته به صورت آبجکت.
(getBoolean(String name : این روال مقدار Boolean معین گردیده بوسیله کلید را return می نماید.
(getDouble(String name : این اسلوب مقدار double معین گردیده به وسیله کلید را return می نماید.
(getInt(String name : این اسلوب مقدار درست ( integer) مشخص و معلوم گردیده به وسیله کلید را return می نماید.
(getLong(String name : این سیاق مقدار طولی (long value) مشخص و معلوم گردیده بوسیله کلید را return می نماید.
()length : این اسلوب تعداد نگاشت های اسم / مقدار (name/value) دراین آبجکت را return می نماید .
()names : این مشی آرایه ای از اسم های حرفه ای درین آبجکت را return می نماید .