Solved

how to read Json in VB 2010

Posted on 2015-01-13
15
118 Views
Last Modified: 2015-01-18
HI,
Im struggling to get the correct syntax to read a field in my json,

heres my json

{  
  "results":[  
    {  
      "address_components":[  
        {  
          "long_name":"NG18 4YP",
          "short_name":"NG18 4YP",
          "types":[  
            "postal_code"
          ]
        },
        {  
          "long_name":"Mansfield",
          "short_name":"Mansfield",
          "types":[  
            "locality",
            "political"
          ]
        },
        {  
          "long_name":"Mansfield",
          "short_name":"Mansfield",
          "types":[  
            "postal_town"
          ]
        },
        {  
          "long_name":"Nottinghamshire",
          "short_name":"Nottinghamshire",
          "types":[  
            "administrative_area_level_2",
            "political"
          ]
        },
        {  
          "long_name":"United Kingdom",
          "short_name":"GB",
          "types":[  
            "country",
            "political"
          ]
        }
      ],
      "formatted_address":"Mansfield, Mansfield, Nottinghamshire NG18 4YP, UK",
      "geometry":{  
        "bounds":{  
          "northeast":{  
            "lat":53.135115,
            "lng":-1.1843116
          },
          "southwest":{  
            "lat":53.1334688,
            "lng":-1.1865058
          }
        },
        "location":{  
          "lat":53.1343937,
          "lng":-1.1849156
        },
        "location_type":"APPROXIMATE",
        "viewport":{  
          "northeast":{  
            "lat":53.1356408802915,
            "lng":-1.184059719708498
          },
          "southwest":{  
            "lat":53.1329429197085,
            "lng":-1.186757680291502
          }
        }
      },
      "types":[  
        "postal_code"
      ]
    }
  ],
  "status":"OK"
}

Open in new window


I want the Lat & Lng values from the location_type":"APPROXIMATE", section??
 Heres my Code:

       
Dim result = JsonConvert.DeserializeObject(x)
        Dim lat
        com = result("results")("approximate")("lat")

Open in new window


thanks
0
Comment
Question by:jellydeal
  • 6
  • 5
  • 4
15 Comments
 
LVL 69

Expert Comment

by:Éric Moreau
ID: 40546835
0
 
LVL 32

Expert Comment

by:Big Monty
ID: 40546840
have you thought about using json.net?

once you have your class objects defined, it makes it a lot easier in working with them and accessing all of the data
0
 

Author Comment

by:jellydeal
ID: 40546879
hi,

Ive spen all day just getting the right references installed etc ;)
Im happy using 'Newtonsoft.Json', I just dont know how to reference the json itself.

Using this Json and this code It works :
{'books':[{'title':'HarryPotter','pages':'134'}]}
Console.WriteLine(result("books")(0)("title") & " - " & result("books")(0)("pages"))

I jusy dont know how to structure the results line to access the other data
0
 

Author Comment

by:jellydeal
ID: 40546880
I also have no idea how to implement json.net in vb 2010 express. I can see any references to it
0
 
LVL 69

Expert Comment

by:Éric Moreau
ID: 40546883
my article gives you the link to download it: https://json.codeplex.com/releases
0
 
LVL 32

Expert Comment

by:Big Monty
ID: 40546893
right mouse click Reference and select "Manage NuGet Packages". From there, search for it or plug in the url Eric posted
0
 
LVL 69

Expert Comment

by:Éric Moreau
ID: 40546910
were "nuget packages" fully supported back in VS 2010 express?
0
Is Your Active Directory as Secure as You Think?

More than 75% of all records are compromised because of the loss or theft of a privileged credential. Experts have been exploring Active Directory infrastructure to identify key threats and establish best practices for keeping data safe. Attend this month’s webinar to learn more.

 

Author Comment

by:jellydeal
ID: 40546911
I cant find any package manager? If I could find the dll, I could manualy add it as a reference>?
0
 
LVL 32

Expert Comment

by:Big Monty
ID: 40546915
good point Eric, I don't believe they were.

You'll need to download it, then add a reference. Look at the installation doc on the web site for specifics
0
 
LVL 32

Expert Comment

by:Big Monty
ID: 40546928
I'm going to be offline for a bit, hopefully Eric can guide you the rest of the way. I'll check back later and offer any insights if needed
0
 
LVL 69

Expert Comment

by:Éric Moreau
ID: 40546934
>>If I could find the dll, I could manualy add it as a reference>?

Yes download it from CodePlex.
0
 

Author Comment

by:jellydeal
ID: 40547091
HI.. Ive decided to download visual studio 2013, this has the package manager..
Could you possibly supply a sample of the .net method of getting the data from json?
0
 
LVL 69

Expert Comment

by:Éric Moreau
ID: 40547142
have you looked at my article? it is all written in there
0
 

Accepted Solution

by:
jellydeal earned 0 total points
ID: 40547402
Hi,

thanks guys, I did look, but couldn't get it to work.
I did figure it out the , the JSON reference i needed WAS:
com = result("results")(0)("geometry")("location")("lat")

THANKS ANYWAY!
0
 

Author Closing Comment

by:jellydeal
ID: 40555995
I figured it out!
0

Featured Post

Is Your Active Directory as Secure as You Think?

More than 75% of all records are compromised because of the loss or theft of a privileged credential. Experts have been exploring Active Directory infrastructure to identify key threats and establish best practices for keeping data safe. Attend this month’s webinar to learn more.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

I was working on a PowerPoint add-in the other day and a client asked me "can you implement a feature which processes a chart when it's pasted into a slide from another deck?". It got me wondering how to hook into built-in ribbon events in Office.
International Data Corporation (IDC) prognosticates that before the current the year gets over disbursing on IT framework products to be sent in cloud environs will be $37.1B.
Get people started with the utilization of class modules. Class modules can be a powerful tool in Microsoft Access. They allow you to create self-contained objects that encapsulate functionality. They can easily hide the complexity of a process from…
This lesson covers basic error handling code in Microsoft Excel using VBA. This is the first lesson in a 3-part series that uses code to loop through an Excel spreadsheet in VBA and then fix errors, taking advantage of error handling code. This l…

864 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

19 Experts available now in Live!

Get 1:1 Help Now