Foxtable(狐表)用户栏目专家坐堂 → [求助]如何使用json返回的数组?


  共有4643人关注过本帖树形打印复制链接

主题:[求助]如何使用json返回的数组?

帅哥哟,离线,有人找我吗?
智友软件工作室
  11楼 | QQ | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:四尾狐 帖子:912 积分:7445 威望:0 精华:0 注册:2013/2/25 13:10:00
  发帖心情 Post By:2013/9/5 22:36:00 [只看该作者]

以下是引用有点甜在2013-9-5 22:11:00的发言:
 测试了很多下,查询了好些资料,发觉不能够,所以这样如下处理,自己判断下标去取值。

Dim s As String = "{'face':[{'a':'a'}, {'b':{'bb':'bb'}}], 'test':'test'}"
Dim json As String = s
Dim ScriptControl As Object,data As Object,JscriptCode As String
JscriptCode = "function toObject(json) {eval(""var o=""+json);return o;}"
ScriptControl = CreateObject("MSScriptControl.ScriptControl")
With ScriptControl
    .Language = "Javascript"
    .Timeout = -1
    .AddCode(JscriptCode)
    data = .Run("toObject", json)
End With

Dim count As Integer = 0
For Each i As object In data.face
    If count = 1 Then
        msgbox(i.b.bb)
    End If
    count += 1
Next



按照您这个思路已经实现我的功能了,现在有一个地方不理解为什么不能指定位置呢?
比如:
Dim i As object = data.face
MessageBox.Show(i.attribute.age.range)


 回到顶部
帅哥哟,离线,有人找我吗?
智友软件工作室
  12楼 | QQ | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:四尾狐 帖子:912 积分:7445 威望:0 精华:0 注册:2013/2/25 13:10:00
  发帖心情 Post By:2013/9/5 22:43:00 [只看该作者]

我现在就是这样弄的,结果已经翻快出来了,非常感谢您的帮助。
现在的疑问是为什么不能直接引用呢?为什么要遍历一下这个data.face呢?

 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  13楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2013/9/5 23:01:00 [只看该作者]

 我也不知道具体的原因,等高手解答吧。

 回到顶部
帅哥哟,离线,有人找我吗?
  14楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:三尾狐 帖子:732 积分:5491 威望:0 精华:14 注册:2011/8/28 12:49:00
  发帖心情 Post By:2013/9/6 9:01:00 [只看该作者]

常规方法,可以自己根据json串自己写两个类,然后反序列化,再去读取这个类的属性

 回到顶部
总数 14 上一页 1 2