Platforms to show: All Mac Windows Linux Cross-Platform
/Util/JSON/JSON recursive search
Required plugins for this example: MBS Util Plugin
You find this example project in your Plugins Download as a Xojo project file within the examples folder: /Util/JSON/JSON recursive search
This example is the version from Sat, 2nd Aug 2013.
Project "JSON recursive search.xojo_binary_project"
Class App Inherits Application
Const kEditClear = "&Löschen"
Const kFileQuit = "Beenden"
Const kFileQuitShortcut = ""
End Class
Class Window1 Inherits Window
Control TextArea1 Inherits TextArea
ControlInstance TextArea1 Inherits TextArea
End Control
EventHandler Sub Open()
Dim objJSON as JSONMBS
objJSON = New JSONMBS(TextArea1.text)
Dim objFind As JSONMBS = objJSON.ChildRecursive("state")
MsgBox "Parameter """ + objFind.Name + """ is: """ + objFind.ValueString + """."
// Outputs: Parameter "state" is: "Calisota, USA".
End EventHandler
End Class
MenuBar MenuBar1
MenuItem FileMenu = "&Ablage"
MenuItem FileQuit = "#App.kFileQuit"
MenuItem EditMenu = "&Bearbeiten"
MenuItem EditUndo = "&Rückgängig"
MenuItem UntitledMenu1 = "-"
MenuItem EditCut = "&Ausschneiden"
MenuItem EditCopy = "&Kopieren"
MenuItem EditPaste = "&Einfügen"
MenuItem EditClear = "#App.kEditClear"
MenuItem UntitledMenu0 = "-"
MenuItem EditSelectAll = "&Alles auswählen"
End MenuBar
Module Module1
Function ChildRecursive(extends j as JSONMBS, text as string) As JSONMBS
// do normal search
dim e as JSONMBS = j.Child(text)
if e <> nil then Return e
// and search child nodes
dim child as JSONMBS = j.ChildNode
while child<>Nil
dim r as JSONMBS = child.Child(text)
if r<>Nil then Return r
child = child.NextNode
wend
End Function
End Module
End Project
See also:
The items on this page are in the following plugins: MBS Util Plugin.