是否有适用于VB6/VBA的JSON解析器? [英] Is There a JSON Parser for VB6 / VBA?

查看:302
本文介绍了是否有适用于VB6/VBA的JSON解析器?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在尝试在VB6中使用Web服务.该服务-由我控制-当前可以返回SOAP/XML消息或JSON.我很难确定VB6的SOAP类型(版本1)是否可以处理返回的object-与诸如stringint等简单类型相反.到目前为止,我仍无法弄清楚我需要什么使VB6可以与返回的对象一起播放.

I am trying to consume a web service in VB6. The service - which I control - currently can return a SOAP/XML message or JSON. I am having a really difficult time figuring out if VB6's SOAP type (version 1) can handle a returned object - as opposed to simple types like string, int, etc. So far I cannot figure out what I need to do to get VB6 to play with returned objects.

所以我想我可以将Web服务中的响应序列化为JSON字符串. VB6是否存在JSON解析器?

So I thought I might serialize the response in the web service as a JSON string. Does a JSON parser exist for VB6?

推荐答案

查看 JSON.org 多种语言的JSON解析器的最新列表(请参阅主页底部).在撰写本文时,您将在此处看到指向几个不同的JSON解析器的链接,但是只有一个用于VB6/VBA(其他是.NET):

Check out JSON.org for an up-to-date list (see bottom of main page) of JSON parsers in many different languages. As of the time of this writing, you'll see a link to several different JSON parsers there, but only one is for VB6/VBA (the others are .NET):

  • 当我尝试下载zip文件时,Windows表示数据已损坏.但是,我可以使用 7-zip 将文件拉出.事实证明,Windows无法将zip文件中的主要文件夹"识别为文件夹,通过7-zip可以看到该主要文件夹"的内容,因此您可以将其打开,然后相应地提取文件
  • 此VB JSON库的实际语法非常简单:

  • When I tried to download the zip file, Windows said the data was corrupt. However, I was able to use 7-zip to pull the files out. It turns out that the main "folder" in the zip file isn't recognized as a folder by Windows, by 7-zip can see the contents of that main "folder," so you can open that up and then extract the files accordingly.
  • The actual syntax for this VB JSON library is really simple:

Dim p As Object
Set p = JSON.parse(strFormattedJSON)

'Print the text of a nested property '
Debug.Print p.Item("AddressClassification").Item("Description")

'Print the text of a property within an array '
Debug.Print p.Item("Candidates")(4).Item("ZipCode")

  • 注意:我必须通过VBA编辑器中的工具">引用"将"Microsoft脚本运行时"和"Microsoft ActiveX数据对象2.8"库添加为引用.
  • 注意:VBJSON代码实际上基于Google代码项目 vba-json .但是,VBJSON承诺会从原始版本中修复一些错误.
  • Note: I had to add the "Microsoft Scripting Runtime" and "Microsoft ActiveX Data Objects 2.8" library as references via Tools > References in the VBA editor.
  • Note: VBJSON code is actually based on a google code project vba-json. However, VBJSON promises several bug fixes from the original version.
  • 这篇关于是否有适用于VB6/VBA的JSON解析器?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

    查看全文
    登录 关闭
    扫码关注1秒登录
    发送“验证码”获取 | 15天全站免登陆