Cara Mengolah Data JSON di VB.NET

Untuk membaca dan menulis data dengan format JSON di VB.NET anda bisa menggunakan Json.NET. Pada contoh yang diberikan di dokumentasi library tersebut menggunakan C-sharp. Karena itu penulis di sini mencoba memberi contoh sederhana menulis dan membaca JSON dengan bahasa Visual Basic.

Contoh data:

  1. ["anas hidayat","jl sukamesum"]
  2. {"nama":"anas hidayat","alamat":"jl suka mesum"}
  3. [{"nama":"anas hidayat","alamat":"jl sukamesum"},{"nama":"joni iskandar","alamat":"jl maju mundur"}]

Untuk mempermudah penggunaan library tersebut tambahkan kode import di class VB.NET anda:


Imports Newtonsoft.Json
Imports Newtonsoft.Json.Linq

Writing JSON

Untuk contoh data nomor 1 berupa JSON array:


Private Sub WriteJSONArray
  Dim jarray As New JArray
 jarray.Add("anas hidayat")
 jarray.Add("jl sukamesum")
 Console.WriteLine(jarray.ToString)
End Sub

Untuk contoh data nomor 2 berupa JSON Object:


Private Sub WriteJSONObject
 Dim jobject As New JObject
 jobject.Add(New JProperty("nama", "anas hidayat"))
 jobject.Add(New JProperty("alamat", "jl sukamesum"))
 Console.WriteLine(jobject.ToString)
End Sub

Mengambil data dari DataTable dengan format seperti contoh nomor 3:


Privet Sub WriteJSONFromDataTable
  Dim dt As New DataTable
        Dim clmnama As Data.DataColumn = dt.Columns.Add
        clmnama.DataType = System.Type.GetType("System.String")
        clmnama.ColumnName = "nama"
        Dim clmalamat As Data.DataColumn = dt.Columns.Add
        clmalamat.DataType = System.Type.GetType("System.String")
        clmalamat.ColumnName = "alamat"
        dt.Rows.Clear()

        dt.Rows.Add({"anas hidayat", "jl sukamesum"})
        dt.Rows.Add({"joni iskandar", "jl maju mundur"})

        Dim jarray As New JArray
        For Each rw As System.Data.DataRow In dt.Rows

            Dim jobject As New JObject
            Dim columnama As Data.DataColumn = dt.Columns(0)
            Dim columnalamat As Data.DataColumn = dt.Columns(1)
            jobject.Add(New JProperty(columnama.ColumnName, rw("nama")))
            jobject.Add(New JProperty(columnalamat.ColumnName, rw("alamat")))
            jarray.Add(jobject)
        Next
        Console.WriteLine(jarray.ToString)
End Sub

Reading atau Parsing JSON

Untuk contoh data JSON Array seperti nomor 1:


Private Sub ReadJSONArray
Dim jarr As Linq.JArray = Linq.JArray.Parse(TextBox1.Text)
for each jtk as Jtoken in jarr
Console.WriteLine(jtk.toString)
next
End Sub

Untuk contoh data JSON Object seperti nomor 2:


Private Sub ReadJSONObject
Dim jobj As Linq.JObject = Linq.JObject.Parse(TextBox1.Text)
Console.WriteLine(jobj.SelectToken("nama"))
Console.WriteLine(jobj.SelectToken("alamat"))
End Sub

Parsing JSON Array yang didalamnya terdapat JSON Object seperti contoh data nomor 3:


Private Sub ReadJSONArrayObject
Dim jarr As Linq.JArray = Linq.JArray.Parse(TextBox1.Text)
For Each jtk As JToken In jarr
                Console.WriteLine(jtk.SelectToken("nama"))
                Console.WriteLine(jtk.SelectToken("alamat"))
Next
End Sub

Jika format JSON dari sumber luar yang datanya kadang tidak terformat dengan baik, untuk memparsingnya anda harus menggunakan perintah try catch sebagai trapping error.

anasmbahdien

Seorang programmer yang menguasai bahasa pemograman Delphi, VB.NET, PHP dan Android. Untuk hasil karya kunjungi mogotekno.com

Tinggalkan Balasan

Alamat email Anda tidak akan dipublikasikan. Ruas yang wajib ditandai *