如題,VB6.0 下解析Json,用大佬的解析器(https://blog.csdn.net/bakw/article/details/51035338) 解析后返回值為[object Object]。
估計是內容可能跟示例的不一樣,我要解析的 strJson 是:
{
"info": [
{
"name": "one",
"sex": "two",
"age": "three"
},
{
"name": "one1",
"sex": "two1",
"age": "three1"
},...
] "code": 0, "msg": "true" }
對其進行調整后解決,如下代碼。
調用方式不變:
取"code":JSONParse("code", strJson) :返回 "one";
當需要取List中的記錄時,請自行拆分下面方法增加可用性;
判斷是否存在第n個list記錄:JSONParse("info[n-1]", strJson) :存在返回 "[object Object]" / 不存在返回 "";
取第2個List中的"name":JSONParse("info[1].name", strJson) :返回 "one1"。
1 Public Function JSONParse(ByVal JSONPath As String, ByVal JSONString As String) As Variant 2 On Error GoTo ErrH 3 Dim JSON As Object 4 Set JSON = CreateObject("MSScriptControl.ScriptControl") 5 JSON.Language = "JScript" 6 JSON.AddCode "var Json = " & JSONString & ";" 7 JSONParse = JSON.Eval("Json." & JSONPath) 8 Set JSON = Nothing 9 Exit Function 10 ErrH: 11 Debug.Print Err.Description 12 Err.Clear 13 End Function
