غير مُجاب استفسار حول استخدام Json بطريقة احترافية في Vb.net

تم تحميل الصفحة في 0,2741324 ثانية
استفسار حول استخدام Json بطريقة احترافية في Vb.net
إنضم
11 يونيو 2017
المشاركات
129
الإعجابات
68
النقاط
28
العمر
21
السلام عليكم
رمضان كريم علينا وعليكم

صراحة لا اعرف عنوان لهذا الموضوع
ولكن كل ما اريده هو فكرة كيف استخرج المعلومات من Json
كنت استخدم طريقة الMath Regex ولكن هذه الطريقة لا تنفع اذا كنت اريد استخرج كل او اغلب البيانات داخل كود الJson

مثلا هنا
اريد استخرج محتويات داخل الـitems
الموجود في هذا الكود والمحدده باللون الاحمر

{
"json": {
"items": [
{
"name": "aasdas",
"uid": 123123,
"pk": 8780843,
"id": 8780843,
"exp": 1558867243,
},
{
"name": "aasdas",
"pk": 8780843,
"id": 8780843,
"exp": 1558867243,
}
],
},
}

ومثلا في المجلد الاول (لا اعرف اسمه بالضبط) داخل الـItems
يحتوي على uid
اما المجلد الثاني لا يحتوي على uid

مثال : فتخرج البيانات كالتالي

name : aasdas
uid : 123123
pk : 8780843
id : 8780843
exp : 1558867243


name : aasdas
uid :
pk : 8780843
id : 8780843
exp : 1558867243

ملاحظة : هذا الموضوع ليس طلب كود جاهز وانما طلب مساعدة لان بالعادة استخدم الـRegex ولكن الان هنا لن استطيع الاستفادة من الـRegex واريد طريقة ابسط وافضل
وبحثت ولكنني لم اجد فلذا اتيت هنا لعلكم تساعدوني :)

واريد استخدام الطريقة على اكواد اعقد بكثير عن الكود الذي ارفقته
ولكن لسهولة الفهم والاختصار وضعت هذا الكود,

وشكرا جزيلا ..
 
إنضم
11 يونيو 2017
المشاركات
129
الإعجابات
68
النقاط
28
العمر
21
ليش ماتقدر تستخرجهم الregex ؟
بالعكس بسهوله تقدر
اي اكدر بس رح يكون الكود الي اريده معقد اكثر وفيه اكثر من 44 حقل
واريد منه فقط 3 حقول
واحيانا لا تتوفر كل هذه الحقول ال3
مثلا يتوفر فقط 2

فـ اذا استخدم الregex رح يصير تداخل بالبيانات
اذا مثلا طلبت بيانات المجلد رقم 13 رح يصير تداخل بالبيانات
يعني يمكن يعطيني الName للمجلد ال12 لان واحد من المجلدات م فيه حقل اسمه Name
او الـuid للمجلد 10 لان اكو 3 مجلدات ما فيها حقل اسمه uid

ف هيج قصدي
رح يصير تداخل وتضارب بالبيانات فلذلك ردت بديل للregex
 
إنضم
11 يونيو 2017
المشاركات
129
الإعجابات
68
النقاط
28
العمر
21
او يمكن الكه حل عندك اذا ما وجد الname رح يخلي الstring = nothink
م ادري اي حل ممكن يفيدني انا ما عندي اي اعتراض عليه
 
إنضم
20 سبتمبر 2017
المشاركات
33
الإعجابات
11
النقاط
8
في البداية
نضيف مكتبة Newtonsoft.Json

ثانيا
كود:
Imports Newtonsoft.Json.Linq


بعد كذا جلب الحاجه الي تبيها ..

كود:
                    Dim jobject As JObject = JObject.Parse( الرابط الي تبي تسحب منه [ String ] )
                    Dim str As String = CStr(jobject("  [ name  ]  هنا ضيف الشي الي تبيه يسحبه لك مثلا"))

للامانه معرف اشرح
ولكن اتمنى اني افدتك :)
 

Ahmed Al'jabari

إداري أقسام البرمجة
rankrankrankrank
إنضم
24 يونيو 2017
المشاركات
1,422
الإعجابات
1,125
النقاط
123
الإقامة
Turkey
في البداية
نضيف مكتبة Newtonsoft.Json

ثانيا
كود:
Imports Newtonsoft.Json.Linq


بعد كذا جلب الحاجه الي تبيها ..

كود:
                    Dim jobject As JObject = JObject.Parse( الرابط الي تبي تسحب منه [ String ] )
                    Dim str As String = CStr(jobject("  [ name  ]  هنا ضيف الشي الي تبيه يسحبه لك مثلا"))

للامانه معرف اشرح
ولكن اتمنى اني افدتك :)
مافرق المكتبه عن الregex ؟
 
إنضم
20 سبتمبر 2017
المشاركات
33
الإعجابات
11
النقاط
8
مافرق المكتبه عن الregex ؟
الفرق ان بعض المواقع تستخدم

content-type : application/json


وما راح يفيدك regex بشي
وبيسحب صفحة فاضيه ...


مجرد كتابة اسم الشي الي تبغاه بيسحبه
من بين جميع السورس الموجود ..

بدال من
كود:
"name"":""(.*?)",
ولكن زي ما قلت ما ينفع غير في المواقع الي تستخدم

content-type : application/json
 

Ahmed Al'jabari

إداري أقسام البرمجة
rankrankrankrank
إنضم
24 يونيو 2017
المشاركات
1,422
الإعجابات
1,125
النقاط
123
الإقامة
Turkey
الفرق ان بعض المواقع تستخدم

content-type : application/json


وما راح يفيدك regex بشي
وبيسحب صفحة فاضيه ...


مجرد كتابة اسم الشي الي تبغاه بيسحبه
من بين جميع السورس الموجود ..

بدال من
كود:
"name"":""(.*?)",
ولكن زي ما قلت ما ينفع غير في المواقع الي تستخدم

content-type : application/json
ممكن موقع يستخدم content-type : application/json لاجرب سحبه بregex ؟
لااتوقع اني لااتسطيع سحبه لاني ساسحب اكواد الصفحه كامله واضعها بtextbox واسحب منها مااريد بالregex
 
إنضم
20 سبتمبر 2017
المشاركات
33
الإعجابات
11
النقاط
8
ممكن موقع يستخدم content-type : application/json لاجرب سحبه بregex ؟
لااتوقع اني لااتسطيع سحبه لاني ساسحب اكواد الصفحه كامله واضعها بtextbox واسحب منها مااريد بالregex
مثلا
TunnelBear vpn

عند تسجيل الدخول لحسابك
ما بتقدر تسحب كم بقي من الحساب او اي معلومة عن الحساب الخاص بك
عن طريق regex

الحل الوحيد استخدام

json

تقدر تحاول ب حساب مجاني
اذا حاب تتاكد

--
صحيح ان بعض المواقع تقدر تسحب عن طريق regex
ولكن مو الكل :)
 
إنضم
11 يونيو 2017
المشاركات
129
الإعجابات
68
النقاط
28
العمر
21
في البداية
نضيف مكتبة Newtonsoft.Json

ثانيا
كود:
Imports Newtonsoft.Json.Linq


بعد كذا جلب الحاجه الي تبيها ..

كود:
                    Dim jobject As JObject = JObject.Parse( الرابط الي تبي تسحب منه [ String ] )
                    Dim str As String = CStr(jobject("  [ name  ]  هنا ضيف الشي الي تبيه يسحبه لك مثلا"))

للامانه معرف اشرح
ولكن اتمنى اني افدتك :)

اسف ع التأخير
بس بهاي الطريقة هل اكدر اني احدد اذا جان اكو فد عنصر مفقود مثل ما حددت بالموضوع

ومثلا في المجلد الاول (لا اعرف اسمه بالضبط) داخل الـItems
يحتوي على uid
اما المجلد الثاني لا يحتوي على uid

مثال : فتخرج البيانات كالتالي

name : aasdas
uid : 123123
pk : 8780843
id : 8780843
exp : 1558867243


name : aasdas
uid :
pk : 8780843
id : 8780843
exp : 1558867243

وشكرا جزبلا لك
 

الأعضاء النشطين حاليآ الذين يشاهدون هذا الموضوع (1 عضو و 0 ضيف)

خيارات الاستايل

نوع الخط
مودك
اخفاء السايدر بار OFF
توسيط المنتدى OFF
فصل الأقسام OFF
الأقسام الفرعية OFF
عرض المشاركات
حجم الخط
معلومات العضو OFF
إخفاء التوقيع OFF

إرجاع خيارات الإستايل