رفتن به مطلب

shaki

کاربر عادی
  • تعداد ارسال ها

    25
  • تاریخ عضویت

  • آخرین بازدید

  • روز های برد

    1

تمامی مطالب نوشته شده توسط shaki

  1. shaki

    آموزش کار با فایل های json

    درود بر همه محمد و شهاب عزیز شما به دو روش می تونید این کارو انجام بدید 1)اگر می خواید از json online استفاده کنید باید فایلهای جیسونتون رو بخونید سپس یک دیتا بیس آفلاین نسبت به فایل json بسازید سپس مقادیر رو در دیتابیس آفلاین بریزید و از داخل اون بروز رسانیتون رو انجام بدید 2)از اموزش مهندس ایزدی در رابطه با دیتا بیس آنلاین استفاده کنید و از طریق اون بروز رسانیتون رو انجام بدید. اگر دنبال شبه کد می گردید تو انجمن در مورد دیتابیس آنلاین و آفلاین مورد زیاد داریم که اساتید چه به صورت تصویری چه به صورت متنی زحمت آموزش هارو کشیدن. اما نظر بنده که یک مبتدی هستم اینکه اول یه وب سرویس JSON اماده کنید سپس با دیتابیس آفلاین بروز رسانیتون رو انجام بدید. در آخر هم برای زیبایی کار می تونید یک notification برای برنامتون بسازید تا هر وقت بروز رسانی جدید برای دیتابیستون اومد کاربر رو مطلع کنید. اگر متوجه منظورم نشدید بگید تا بیشتر توضیح بدم. بدرود.
  2. shaki

    آموزش کار با فایل های json

    درود بر همه کاربران و اساتید محترم به درخواست بعضی از دوستان نحوه کار با کتابخانه جیسون رو براتون آماده کردم امید وارم گامی در پر بار کردن مطالب انجمن برداشته باشم برگ سبزیست تحفه درویش و پیشکش برای زحمات دوستان و خسته نباشید به مدیریت برای قالب جدید. سعی می کنم از اول شروع کنم: JSON چیست؟ JSON مخفف کلمات JavaScript Object Notation می باشد JSON فرمتی سبک وزن برای مبادله داده های متنی می باشد JSON مستقل از زبان می باشد * JSON بصورت "خود تشریح" و برای درک آسان می باشد یکی از پر کاربرد ترین استفاده JSON واکشی داده های JSON از سرویس دهنده وب (به عنوان یک فایل یا درخواست Html). برای اطلاعات بیشتر می تونید به آدرس زیر یه سری بزنید معرفي جي‌سان، JSON و برای اطلاعات بیشتر در مورد کتابخانه جیسون به سایت زیر مراجعه کنید JSON حال با ذکر یک مثال می ریم سراغ b4a. فرض کنید ما یک فایل جیسون داریم به صورت زیر: { "basic4android.org":[ { "id": "1", "name": "mehdi", "family": "izadi","city": "city_1" } , { "id": "2", "name": "nima","family": "ghobadi", "city": "city_2" } , { "id": "3", "name": "majid", "family": "arta","city": "city_3" } , { "id": "4", "name": "mostafa", "family": "haghighi","city": "city_4" } , { "id": "5", "name": "farzad","family": "mosavi", "city": "city_5" } , { "id": "6", "name": "armin","family": "ramezani", "city": "city_6" } , { "id": "7", "name": "mehdi","family": "alavi", "city": "city_7" } , { "id": "8", "name": "mehdi","family": "rostami", "city": "city_8" } , { "id": "9", "name": "ahmad","family": "samadyar", "city": "city_9" } , { "id": "10", "name": "pejman","family": "nikravan", "city": "city_10" } ]} با مراجعه به سایت زیر می توانیم آبجیکت ها و آرایه های فایل جیسون بالا را مشاهده کنیم string of JSON text وارد سایت شده و در تکست باکس متن جیسون خود رو وارد می کنیم و بر روی دکمه json 2 html کلیک می کنیم همانطور که مشاهده می کنید یک جدول با مشخصات فایل جیسون ما ساخته و آبجکت و آرایه ها و value نشان داده می شود توضیحات بالا عرض شد تا با json بیشتر آشنا بشید حالا می ریم سراغ کد نویسی مثل تمام پروژه ها سیو کردن و بقیه عمل ها که خودتون استادید 1-referenced library بعد می ریم سراغ ارجاع به کتابخانه یا referenced library که برای استفاده از کتابخانه json نیاز به زدن تیک این کتابخانه داریم یعنی تیک کتابخانه json v 1.10 را می زنیم 1-1-add file یا اظافه کردن پوشه در این مرحله ما یک فایل txt که حاوی فایل json ماست رو به برنامه اظافه می کنیم که این فایل حاوی اطلاعات json ماست یعنی یک فایل txt درست کرده و محتوای json رو داخل آن ریخته و با پسوند .txt ذخیره و به برنامه اظافه می کنیم 2-تعریف متغیر ها ما نیاز به یک متغیراز نوع json داریم برای این کار در داخل Sub Globals متغیر را تعریف می کنیم و یک lable یک listview و یک spinner که به شکل زیر تعریف می کنیم Sub Globals 'These global variables will be redeclared each time the activity is created. 'These variables can only be accessed from this module. Dim json As JSONParser Private Label1 As Label Private ListView1 As ListView Private Spinner1 As Spinner End Sub 3-Initialize یا مقداردهی اولیه همان طور که می دونید برای دسترسی بهتر و شناساندن متغیر به برنامه ما می یایم از مقداردهی اولیه یا Initialize کردن استفاده می کنیم به شکل زیر json.Initialize(File.ReadString(File.DirAssets,"test.txt")) دستور بالا می یاد در داخل متغیر json ما محتوای string فایل test.txt از File.DirAssets که یک دسترسی فقط خواندنیست می ریزه 4-نسبت دادن فایل json به یک متغیر map سپس یک متغیر map تعریف می کنیم تا محتوای آبجیکت های json رو داخل آن ذخیره کنیم Dim m As Map نکته: اگر در جدولی که سایت string of JSON text به ما داده توجه کنید ما یک آبجیکت داریم به نام basic4android.org که از 10 آرایه تشکیل شده است حالا ما می یایم آبجیکت رو به متغیر map نسبت می دیم و سپس چون این آبجکت از لیستی از آرایه ها تشکیل شده یک متغیر از نوع لیست هم تعریف می کنیم و به آرایه های آبجکتمون نسبت می دیم این طوری ما سعی می کنیم به تمام value ها دسترسی داشته باشیم. مثل کد زیر: m=json.NextObject Dim bas As List bas=m.Get("basic4android.org") با دستور m=json.NextObject ما اولین آبجکت فایل جیسونمون رو می خونیم و داخل متغیر m می ریزیم و با دستور bas=m.Get("basic4android.org") ما آرایه های object اولمون که با اندیس basic4android.org مشخص شده رو داخل متغیر bas می ریزیم 5-پیمایش در آرایه همانظور که می دونید بیشتر اوقات هرجا اسم از آرایه می یاد ما برای پیمایش در آرایه از یک حلقه استفاده می کنیم آرایه حالا ما نیاز به یک حلقه for داریم که از 0 شروع بشه و تا انتهای آریه ساخته شدمون بره بخاطر همین از دستور زیر استفاده می کنیم For i=0 To bas.Size-1 next در دستور بالا ما یه حلقه ایجاد کردیم که از 0 شروع می شه و تا انتهای آرایه bas می ره چون هر عضو آرایه ی ما هم خودش از چند مقدارتشکیل شده دوباره می یایم هر کودوم از آرایه مون رو به متغیر map نسبت می دیم تا بتونیم به value هاش دسترسی پیدا کنیم برای این کار از دستور زیر استفاده می کنیم: For i=0 To bas.Size-1 m=bas.Get(i) next ما حالا کامل می تونیم به همه فایل جیسونمون دسترسی داشته باشیم و از طیق اندیس های آرایه به داده های اصلی و مقدار های نهایی دسترسی داشته باشیم حالا می یایم از طریق اندیس های آرایه که اگر یادتون باشه با id,name,family,city مشخص شده بودند به مقدار هاشون دسترسی پیدا می کنیم مثلا در کد زیر اولین آرایه ما هست: { "id": "1", "name": "mehdi", "family": "izadi","city": "city_1" } اندیس id مقدارش برابر با 1 است و name برابر با mehdi و family برابر با izadi و الی آخر 6-مقدار دهی به Spinner1 و ListView1 که دیگه این مقدار دهی هم کاملا مشخص است و حلقه for ما هم کامل می شه For i=0 To bas.Size-1 m=bas.Get(i) Spinner1.Add(m.Get("id")) ListView1.AddTwoLines(m.Get("name"), m.Get("family")) Next در آخر هم کل پروژه به صورت زیر در می یاد: Sub Globals 'These global variables will be redeclared each time the activity is created. 'These variables can only be accessed from this module. Dim json As JSONParser Private Label1 As Label Private ListView1 As ListView Private Spinner1 As Spinner End Sub Sub Activity_Create(FirstTime As Boolean) 'Do not forget to load the layout file created with the visual designer. For example: Activity.LoadLayout("Layout1") json.Initialize(File.ReadString(File.DirAssets,"test.txt")) Dim m As Map m=json.NextObject Dim bas As List bas=m.Get("basic4android.org") For i=0 To bas.Size-1 m=bas.Get(i) Spinner1.Add(m.Get("id")) ListView1.AddTwoLines(m.Get("name"), m.Get("family")) Next End Sub ممنون از همه عزیزان آموزش بعدی برای کار با json online اگر برسم می زارم شرمنده اگر یه کم گنگه فعلا تازه کارم اما خودمو سعی می کنم برسونم json.rar lib.rar
×
×
  • اضافه کردن...