Вопрос:
Я вызываю веб-службу в VB6, которая возвращает строку json в качестве ответа. Я могу удерживать ответ в строке. теперь я хочу показать каждый параметр отдельно, как я могу извлечь значения из строки?. строка примера находится здесь:
{ «id»: «22144», «t» : «AAPL», «e» : «NASDAQ», «l» : «108.00», «l_fix» : «108.00», «l_cur» : «108.00», «s»: «2», «ltt»:»4:00PM EDT», «lt» : «Aug 10, 4:00PM EDT», «lt_dts» : «2016-08-10T16:00:01Z», «c» : «-0.81», «c_fix» : «-0.81», «cp» : «-0.74», «cp_fix» : «-0.74», «ccol» : «chr», «pcls_fix» : «108.81», «el»: «107.98», «el_fix»: «107.98», «el_cur»: «107.98», «elt» : «Aug 10, 5:16PM EDT», «ec» : «-0.02», «ec_fix» : «-0.02», «ecp» : «-0.02», «ecp_fix» : «-0.02», «eccol» : «chr», «div» : «0.57», «yld» : «2.11» } Лучший ответ:
Я нашел, что VB-JSON отлично работает для разбора json в VB6.
Вы можете скачать его здесь.
VB-JSON: Visual Basic 6 (VB6) Библиотека классов JSON Parser
.zip файл .zip будет содержать образец проекта и библиотеку, которая называется JSON.bas.
Основная функция анализатора – JSON.parse и вы передаете ей строку json в качестве параметра.
Поэтому в вашем проекте вам нужно включить/добавить файл JSON.bas.
Пример использования (из примера проекта):
Private Sub cmdObjToJSON_Click() Dim p As Object Dim sInputJson As String sInputJson = «{ width: ‘200’, frame: false, height: 130, bodyStyle:’background-color: #ffffcc;’,buttonAlign:’right’, items: [{ xtype: ‘form’, url: ‘/content.asp’},{ xtype: ‘form2’, url: ‘/content2.asp’}] }» MsgBox «Input JSON string: » & sInputJson ‘ sets p Set p = JSON.parse(sInputJson) MsgBox «Parsed object output: » & JSON.toString(p) MsgBox «Get Bodystyle data: » & p.Item(«bodyStyle») MsgBox «Get Form Url data: » & p.Item(«items»).Item(1).Item(«url») p.Item(«items»).Item(1).Add «ExtraItem», «Extra Data Value» MsgBox «Parsed object output with added item: » & JSON.toString(p) End Sub
Как это относится к вашему делу. Что-то вроде следующего может работать (с некоторыми настройками, если необходимо).
Dim parsedJsonObject As Object Set parsedJsonObject = JSON.parse(yourJsonStringVariable) ‘Print the ticker ( t in your json ) Debug.Print parsedJsonObject.Item(«t») Ответ №1
Для Visual Basic существует библиотека парсеров JSON, которую вы можете найти на http://json.org/. Вы можете использовать VB-JSON или PW.JSON.
Ответ №2
Может кто-нибудь помочь мне с VBJSON, пожалуйста? Я скачал zip файл, что мне делать с содержимым, нужно ли мне просто импортировать JSON.bas в мой проект?
Будет ли это работать с msAccess, а не только с Excel?