Farzad Sarseifi

آموزش JSON در اندروید

2 ارسال در این موضوع قرار دارد

آموزش JSON در اندروید

مفهوم JSON :

JSON کوتاه‌شده‌ی عبارت «Javascript Object Notation» به معنی «نشان‌گذاری شیء جاوااسکریپت» است. JSON شیوه‌ای است که با کمک آن اشیا و اطلاعات برنامه‌نویسی به متن قابل پردازش توسط رایانه و قابل فهم برای انسان تبدیل می‌شوند.

نکته‌ مهم در این شیوه قابلیت فهم آسان توسط انسان است که در دیگر شیوه‌ها مانند XML کمتر به آن توجه شده است.

همان گونه که از نام JSON مشخص است، جاوااسکریپت به صورت پیش‌فرض می‌تواند رشته‌های JSON را پردازش و آن‌ها را ایجاد کند. افزون بر جاوااسکریپت، تقریبا تمام زبان‌های برنامه نویسی متداول با کمک کتابخانه‌های جانبی از JSON پشتیبانی می‌کنند.

برای ساخت عبارت‌های JSON چند قانون ساده وجود دارد که به کوتاهی آن‌ها را مرور می‌کنیم:

عبارت‌های JSON باید میان آکولاد «{}» قرار بگیرند.

اعضای شیء با علامت ویرگول«,» از هم جدا می‌شوند

برای تعریف یک عضو در یک شیء JSON، ابتدا «نام عضو» سپس دونقطه«:» و در پایان «مقدار» نوشته می‌شود

مقدار می‌تواند یکی از انواع «عدد»، «رشته»، «بولی»، «آرایه»، «شیء» و «نال» را بپذیرد. سایر انواع داده باید به صورتی دیگر ذخیره شوند

انواع رشته‌ای باید داخل دو گیومه «"» قرار بگیرند

بسته به زبان مبدا و مقصد انواع داده‌ی دیگری نیز ممکن است قابل پذیرش باشند

خب الان که با معنی و روش کار Json آشنا شده اید ، در این آموزش بطور مثال ، یک رشته جی سون شده را میخوانیم و ان را در اپلیکیشن خود استفاده میکنیم.

اولین قدم برای استفاده از جی سون کار با کلاس josnobject میباشد

برای اینکه بتوانید یک josnobject را parse کنید ابتدا باید json خود را چک کنید.برای اینکار میتوانید از لینک زیر json خود را چک کنید:

http://jsonlint.com/

برای نمونه یک جی سون را قرار میدهیم:

[shcode=xml]

{

"student": [

{

"id": 1,

"name": "Anil",

"city": "Surat",

"Gender": "M",

"age": 10,

"birthdate": "23/05/2002"

},

{

"id": 2,

"name": "Kapil",

"city": "Baroda",

"Gender": "M",

"age": 12,

"birthdate": "08/01/2000"

},

{

"id": 3,

"name": "Priya",

"city": "Ahmedabad",

"Gender": "F",

"age": 14,

"birthdate": "01/03/1998"

}

]

}

[/shcode]

جی سون بالا یک آرایه رشته ای از Student میباشد که باید اول رشته خود را توسط "{" چک کنید و JsonObject برای خواندن هر آیتم آن و همچنین از JsonArray برای کل آرایه رشته ای استفاده کنید.

1.JSONObject

ابتدا یک شی از jsonobject ایحاد میکنیم:

[shcode=java]JSONObject mainJson = new JSONObject(jsonString);[/shcode]

سپس یک jsonArray ایجاد میکنیم برای اینکه اطلاعات مربوط به student را بطور کامل در آن قرار دهیم:

[shcode=java]JSONArray jsonArray = mainJson.getJSONArray("student");[/shcode]

در مرحله بعدی نیاز است بعد از دریافت اطلاعات از جی سون آنها در صورت نیاز استفاده کنیم. بطور مثال:

[shcode=java]for (int i = 0; i < jsonArray.length(); i++) {

JSONObject objJson = jsonArray.getJSONObject(i);

// here you can get id,name,city...

int id = objJson.getInt("id");

String name =objJson.getString("name");

String gender=objJson.getString("Gender");

}

[/shcode]

الان متغیر name دارای مقداری رشته ای میباشد که از جی سون مربوطه دریافت میگردد میباشد.

به اشتراک گذاری این پست


لینک به ارسال
به اشتراک گذاری در سایت های دیگر

سلام

اگه یه آموزش کاملتر بزاری خیلی ممنون میشیم

به خصوص در مورد مشکل حروف فارسی در استفاده با json چون من همین که فایل html سرور رو به صورت UTF-8 ذخیره میکنم برنامه apk بعد از اتصال فورس کلوز میده.

با تشکر

به اشتراک گذاری این پست


لینک به ارسال
به اشتراک گذاری در سایت های دیگر

برای ارسال نظر یک حساب کاربری ایجاد کنید یا وارد حساب خود شوید

برای اینکه بتوانید نظر ارسال کنید نیاز دارید که کاربر سایت شوید

ایجاد یک حساب کاربری

برای حساب کاربری جدید در انجمن ما ثبت نام کنید. عضویت خیلی ساده است !


ثبت نام یک حساب کاربری جدید

ورود به حساب کاربری

دارای حساب کاربری هستید؟ از اینجا وارد شوید


ورود به حساب کاربری