این ارسال پرطرفدار است. shaki 76 ارسال شده در 9 خرداد، ۱۳۹۴ این ارسال پرطرفدار است. اشتراک گذاری ارسال شده در 9 خرداد، ۱۳۹۴ درود بر همه کاربران و اساتید محترم به درخواست بعضی از دوستان نحوه کار با کتابخانه جیسون رو براتون آماده کردم امید وارم گامی در پر بار کردن مطالب انجمن برداشته باشم برگ سبزیست تحفه درویش و پیشکش برای زحمات دوستان و خسته نباشید به مدیریت برای قالب جدید. سعی می کنم از اول شروع کنم: 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 36 2 نقل قول لینک ارسال به اشتراک گذاری در سایت های دیگر تنظیمات بیشتر اشتراک گذاری ...
shahab.msb 326 ارسال شده در 17 خرداد، ۱۳۹۴ اشتراک گذاری ارسال شده در 17 خرداد، ۱۳۹۴ ببخشبد داداش من برنامه پیامکی دیدم که وقتی کاربر روی بروزرسانی کلیک کنه تعداد آیتم های اضافه شده میاد و کاربر میتونه بروزرسانی انجام بده میشه یه توضیح بدین یا یه سورس راجب این چیز درست کنین چون بنده باphp و جاوا اسکریپت کار نکردم منظور من اینه که میخوام وقتی کاربر روی بروزرسانی کلیک کنه تعداد فیلدهای بانک داخل هاست و تعداد فیلدهای بانک خود برنامه رو چک کنه اگه مقدار فیلدهای بانک داخل هاست بیشتر بود بروزرسانی انجام بشه تقریبا چیزی شبیه بروزرسانی برنامه پیامک پاپیون 4 نقل قول لینک ارسال به اشتراک گذاری در سایت های دیگر تنظیمات بیشتر اشتراک گذاری ...
mohammada 22 ارسال شده در 17 خرداد، ۱۳۹۴ اشتراک گذاری ارسال شده در 17 خرداد، ۱۳۹۴ ببخشبد داداش من برنامه پیامکی دیدم که وقتی کاربر روی بروزرسانی کلیک کنه تعداد آیتم های اضافه شده میاد و کاربر میتونه بروزرسانی انجام بده میشه یه توضیح بدین یا یه سورس راجب این چیز درست کنین چون بنده باphp و جاوا اسکریپت کار نکردم منظور من اینه که میخوام وقتی کاربر روی بروزرسانی کلیک کنه تعداد فیلدهای بانک داخل هاست و تعداد فیلدهای بانک خود برنامه رو چک کنه اگه مقدار فیلدهای بانک داخل هاست بیشتر بود بروزرسانی انجام بشه تقریبا چیزی شبیه بروزرسانی برنامه پیامک پاپیون دقیقا همین چیزی که منم بهش احتیاج دارم... یه چیز شبیه لود 20 تایی اگهی ها تو برنامه دیوار 1 نقل قول لینک ارسال به اشتراک گذاری در سایت های دیگر تنظیمات بیشتر اشتراک گذاری ...
shaki 76 ارسال شده در 18 خرداد، ۱۳۹۴ سازنده اشتراک گذاری ارسال شده در 18 خرداد، ۱۳۹۴ درود بر همه محمد و شهاب عزیز شما به دو روش می تونید این کارو انجام بدید 1)اگر می خواید از json online استفاده کنید باید فایلهای جیسونتون رو بخونید سپس یک دیتا بیس آفلاین نسبت به فایل json بسازید سپس مقادیر رو در دیتابیس آفلاین بریزید و از داخل اون بروز رسانیتون رو انجام بدید 2)از اموزش مهندس ایزدی در رابطه با دیتا بیس آنلاین استفاده کنید و از طریق اون بروز رسانیتون رو انجام بدید. اگر دنبال شبه کد می گردید تو انجمن در مورد دیتابیس آنلاین و آفلاین مورد زیاد داریم که اساتید چه به صورت تصویری چه به صورت متنی زحمت آموزش هارو کشیدن. اما نظر بنده که یک مبتدی هستم اینکه اول یه وب سرویس JSON اماده کنید سپس با دیتابیس آفلاین بروز رسانیتون رو انجام بدید. در آخر هم برای زیبایی کار می تونید یک notification برای برنامتون بسازید تا هر وقت بروز رسانی جدید برای دیتابیستون اومد کاربر رو مطلع کنید. اگر متوجه منظورم نشدید بگید تا بیشتر توضیح بدم. بدرود. 2 نقل قول لینک ارسال به اشتراک گذاری در سایت های دیگر تنظیمات بیشتر اشتراک گذاری ...
shahab.msb 326 ارسال شده در 18 خرداد، ۱۳۹۴ اشتراک گذاری ارسال شده در 18 خرداد، ۱۳۹۴ مرسی از جوابتون اما شفاهی مشکلی رو حل نمیکنه لطفا اگه در حد توانتون هست یه نمونه سورس برای من و بقیه دوستان تهیه کنید... در ضمن آموزش ارتباط با دیتابیس آنلاین از آقای ایزدی پرسیدم و فرمودن که این آموزش بدرد چیزی که من میخوام نمیخوره من میخوام مثل برنامه پیامک پاپیون انجام بدم که بیاد فیلدهای دیتابیس آنلاین و فیلدهای دیتابیس آفلاین رو باهم مقایسه کنه و اگه دیتابیس آنلاین فیلدهای بیشتری داشت بیاد بروز رسانی کنه و فیلدهای جدید رو به دیتابیس آفلاین اضافه کنه.. 2 نقل قول لینک ارسال به اشتراک گذاری در سایت های دیگر تنظیمات بیشتر اشتراک گذاری ...
parsixa 35 ارسال شده در 19 مرداد، ۱۳۹۴ اشتراک گذاری ارسال شده در 19 مرداد، ۱۳۹۴ درود بر همه محمد و شهاب عزیز شما به دو روش می تونید این کارو انجام بدید 1)اگر می خواید از json online استفاده کنید باید فایلهای جیسونتون رو بخونید سپس یک دیتا بیس آفلاین نسبت به فایل json بسازید سپس مقادیر رو در دیتابیس آفلاین بریزید و از داخل اون بروز رسانیتون رو انجام بدید 2)از اموزش مهندس ایزدی در رابطه با دیتا بیس آنلاین استفاده کنید و از طریق اون بروز رسانیتون رو انجام بدید. اگر دنبال شبه کد می گردید تو انجمن در مورد دیتابیس آنلاین و آفلاین مورد زیاد داریم که اساتید چه به صورت تصویری چه به صورت متنی زحمت آموزش هارو کشیدن. اما نظر بنده که یک مبتدی هستم اینکه اول یه وب سرویس JSON اماده کنید سپس با دیتابیس آفلاین بروز رسانیتون رو انجام بدید. در آخر هم برای زیبایی کار می تونید یک notification برای برنامتون بسازید تا هر وقت بروز رسانی جدید برای دیتابیستون اومد کاربر رو مطلع کنید. اگر متوجه منظورم نشدید بگید تا بیشتر توضیح بدم. بدرود. سلام جناب خسته نباشید .. آقا ممکنه در رابطه با جیسون آنلاین یک مثال لطف بفرمایید تهیه کنید ؟؟ 1 نقل قول لینک ارسال به اشتراک گذاری در سایت های دیگر تنظیمات بیشتر اشتراک گذاری ...
مجید آرتا 5,874 ارسال شده در 19 مرداد، ۱۳۹۴ اشتراک گذاری ارسال شده در 19 مرداد، ۱۳۹۴ سلام جناب خسته نباشید .. آقا ممکنه در رابطه با جیسون آنلاین یک مثال لطف بفرمایید تهیه کنید ؟؟ سلام ببینید شما برای کار با دیتابیس انلاین و ارسال و دریافت مقادیر خوبه که مقادیر فیلد هارو به فرمتی ساده و در عین حال قوی مثل JSON تبدیل کنید و این اطلاعات رو توی برنامه Parse کنید. چند روزه که میخوام فیلم اموزشیشو بسازم ولی متاسفانه رخصتی پیدا نمیشه انشاءالله اموزش تصویریشو بنده میسازم و قرار میدم 4 نقل قول لینک ارسال به اشتراک گذاری در سایت های دیگر تنظیمات بیشتر اشتراک گذاری ...
parsixa 35 ارسال شده در 21 مرداد، ۱۳۹۴ اشتراک گذاری ارسال شده در 21 مرداد، ۱۳۹۴ سلام ببینید شما برای کار با دیتابیس انلاین و ارسال و دریافت مقادیر خوبه که مقادیر فیلد هارو به فرمتی ساده و در عین حال قوی مثل JSON تبدیل کنید و این اطلاعات رو توی برنامه Parse کنید. چند روزه که میخوام فیلم اموزشیشو بسازم ولی متاسفانه رخصتی پیدا نمیشه انشاءالله اموزش تصویریشو بنده میسازم و قرار میدم دست شما دردنکنه آقا مجید انشاالله که وقتش هم واستون پیش میاد خیلی دنبال همچین آموزشی هستم .. اگر لطف بفرمایید تهیه کنید که نور علی نوره .. منتظریم همچنان 1 نقل قول لینک ارسال به اشتراک گذاری در سایت های دیگر تنظیمات بیشتر اشتراک گذاری ...
mohammad-alone 564 ارسال شده در 21 مرداد، ۱۳۹۴ اشتراک گذاری ارسال شده در 21 مرداد، ۱۳۹۴ دوستان اینطور که برداشت میشه مثل رکورد میمونه ... میشه بفرمائید تفاوت اون با رکورد پی هستش ؟؟؟ نقل قول لینک ارسال به اشتراک گذاری در سایت های دیگر تنظیمات بیشتر اشتراک گذاری ...
sadeghkiyani 98 ارسال شده در 27 شهریور، ۱۳۹۴ اشتراک گذاری ارسال شده در 27 شهریور، ۱۳۹۴ عالی بود ممنونم نقل قول لینک ارسال به اشتراک گذاری در سایت های دیگر تنظیمات بیشتر اشتراک گذاری ...
zartosht 10 ارسال شده در 6 مرداد، ۱۳۹۵ اشتراک گذاری ارسال شده در 6 مرداد، ۱۳۹۵ دوستان خلاصه خدمتتون عرض میکنم.. این کار بیشتر زمانی پیش میاد که شما یک سایت دارید و میخواید با بروزرسانی سایت و بازکردن اپ برنامه هم مثل سایت بروز بشه. در این صورت شما ابتدا نیاز است هنگام گذاشتن مطلب جدید در وبسایت فایل جیسون رو هم آپدیت کنید برای راحتی میتونید از پلاگین هایی مثل json api برای وردپرس استفاده کنید. برای اپ هم شما هربار موقع اجرای برنامه فایل جیسون استرینگ رو دانلود میکنید محتویاتش رو به روش بالا چک میکنید و اگر مقداری اضافه شده بود به بانک اطلاعاتیتون اضافه میکنید. حالا زمانی هست که وبسایتی ندارید و فقط محتویات اپ نیاز به بروزرسانی دارند در اون صورت شما با استفاده از مستندات ساختار json مقادیر رو دستی مینویسید و سپس از روش معمول b4a برای خواندن فایل جیسون استفاده میکنید. این وبسایت مرجع: http://www.json.org/ این وبسایت تبدیل رشته به چیدمان درختی: http://jsoneditoronline.org/index.html این نمونه فایل جیسون در هاست من: http://radiomedia.ir/api/get_posts/ این هم تبدیل جیسون به کدهای b4a: سایت مرجع http://basic4ppc.com:51042/json/index.html موید باشید 2 نقل قول لینک ارسال به اشتراک گذاری در سایت های دیگر تنظیمات بیشتر اشتراک گذاری ...
ارسالهای توصیه شده
به گفتگو بپیوندید
هم اکنون می توانید مطلب خود را ارسال نمایید و بعداً ثبت نام کنید. اگر حساب کاربری دارید، برای ارسال با حساب کاربری خود اکنون وارد شوید .
توجه: strong> مطلب ارسالی شما پس از تایید مدیریت برای همه قابل رویت خواهد بود.