رفتن به مطلب
  • 0
For

Parse Json

سوال

For    8

سلام دوستان

یه جیسون هست که مقدار اولیه نداره ورودی و خروجیش بصورت لیست هست میشه راهنمایی کنید چطور میشه آیتم هاش رو گرفت:

جیسون:

[{"name":"\u0627\u0628\u0639\u0627\u062f","options":["22.9 \u00d7 260 \u00d7 378 \u0645\u06cc\u0644\u06cc\u200c\u0645\u062a\u0631"]},{"name":"\u0648\u0632\u0646","options":["2.2 \u06a9\u06cc\u0644\u0648\u06af\u0631\u0645"]},{"name":"\u0633\u0627\u0632\u0646\u062f\u0647-\u067e\u0631\u062f\u0627\u0632\u0646\u062f\u0647","options":["Intel"]},{"name":"\u0633\u0631\u06cc-\u067e\u0631\u062f\u0627\u0632\u0646\u062f\u0647","options":["Core i5"]},{"name":"\u0645\u062f\u0644-\u067e\u0631\u062f\u0627\u0632\u0646\u062f\u0647","options":["8250U"]},{"name":"\u0645\u062d\u062f\u0648\u062f\u0647-\u0633\u0631\u0639\u062a-\u067e\u0631\u062f\u0627\u0632\u0646\u062f\u0647","options":["\u062a\u0627 2.0GHz"]},{"name":"\u0641\u0631\u06a9\u0627\u0646\u0633-\u067e\u0631\u062f\u0627\u0632\u0646\u062f\u0647","options":["1.60GHz up to 3.40 GHz"]},{"name":"\u062d\u0627\u0641\u0638\u0647-cache","options":["6 \u0645\u06af\u0627\u0628\u0627\u06cc\u062a"]},{"name":"\u0638\u0631\u0641\u06cc\u062a-\u062d\u0627\u0641\u0638\u0647-ram","options":["8 \u06af\u06cc\u06af\u0627\u0628\u0627\u06cc\u062a"]},{"name":"\u0646\u0648\u0639-\u062d\u0627\u0641\u0638\u0647-ram","options":["DDR4"]},{"name":"\u0638\u0631\u0641\u06cc\u062a-\u062d\u0627\u0641\u0638\u0647-\u062f\u0627\u062e\u0644\u06cc","options":["\u06cc\u06a9 \u062a\u0631\u0627\u0628\u0627\u06cc\u062a"]},{"name":"\u0646\u0648\u0639-\u062d\u0627\u0641\u0638\u0647-\u062f\u0627\u062e\u0644\u06cc","options":["\u0647\u0627\u0631\u062f \u062f\u06cc\u0633\u06a9"]},{"name":"\u0645\u0634\u062e\u0635\u0627\u062a-\u062d\u0627\u0641\u0638\u0647-\u062f\u0627\u062e\u0644\u06cc","options":["5400RPM"]},{"name":"\u0633\u0627\u0632\u0646\u062f\u0647-\u067e\u0631\u062f\u0627\u0632\u0646\u062f\u0647-\u06af\u0631\u0627\u0641\u06cc\u06a9\u06cc","options":["NVIDIA"]}]

کدی که واسه استفاده بیسیک میده:

Dim parser As JSONParser
parser.Initialize(<text>)
Dim root As List = parser.NextArray
For Each colroot As Map In root
 Dim name As String = colroot.Get("name")
 Dim options As List = colroot.Get("options")
 For Each coloptions As String In options
 Next
Next 

coloptions میشه مقادیری لیستی که گفتم اما چون تگ و اسم مشخصی ندارن نمیشه گرفت

گاهی اوقات options چند مورد هست مثلا 2 یا 3 یا...

با این سایت جیسون رو بررسی کردم

ساختارش:

B4J - JSON Tree2.png

 

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


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

1 پاسخ به این سوال تا کنون داده شده است

پست های پیشنهاد شده

  • 0
در در 15 دی 1399 در 01:04، For گفته است :

سلام دوستان

یه جیسون هست که مقدار اولیه نداره ورودی و خروجیش بصورت لیست هست میشه راهنمایی کنید چطور میشه آیتم هاش رو گرفت:

جیسون:

کدی که واسه استفاده بیسیک میده:

coloptions میشه مقادیری لیستی که گفتم اما چون تگ و اسم مشخصی ندارن نمیشه گرفت

گاهی اوقات options چند مورد هست مثلا 2 یا 3 یا...

با این سایت جیسون رو بررسی کردم

ساختارش:

سلام و درود. با کتابخونه persianjson خیلی راحت میشه پارس کرد. به شکل زیر

Type ItemModel(name As String, options As List)

'''''''''''''''''''''''''''''''''''''''

Dim js As PersianJSONArray
	js.initialize("your json")
	Dim listItems As List
	listItems.Initialize
	For i=0 To js.size-1
		Dim jobj As PersianJSONOBject=js.getJsonObject(i)
		Dim name As String=jobj.getString("name")
		Dim loptions As List
		loptions.Initialize
		Dim options As PersianJSONArray=jobj.getJsonArray("options")
		For j=0 To options.size-1
			Dim option As String=options.geTObject(j)
			loptions.Add(option)
		Next
		Dim item As ItemModel
		item.Initialize
		item.name=name
		item.options=loptions
		listItems.Add(item)
	Next

 

  • تشکر 1

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


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

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

مهمان
پاسخ به این سوال ...

×   شما در حال چسباندن محتوایی با قالب بندی هستید.   حذف قالب بندی

  تنها استفاده از 75 اموجی مجاز می باشد.

×   لینک شما به صورت اتوماتیک جای گذاری شد.   نمایش به عنوان یک لینک به جای

×   محتوای قبلی شما بازگردانی شد.   پاک کردن محتوای ویرایشگر

×   شما مستقیما نمی توانید تصویر خود را قرار دهید. یا آن را اینجا بارگذاری کنید یا از یک URL قرار دهید.


×
×
  • جدید...