VB.NET Json.NETの使い方

(Visual Studio 2015 版)

投稿日 2015/11/01

[Home] | VB.NET インデックス

概要

Json.NET は .NET Framework で JSON 形式のデータをサポートするクラスライブラリですが、Microsoft の製品ではなくて Newtonsoft という会社の製品です。このため、下の場所からダウンロードしてインストールする必要があります。

Newtonsoft.Json

インストール

インストールですが、NuGet パッケージとなっており NuGet コンソールを使ってインストールします。Visual Studio 2015 で「ツール」→「NuGet パッケージマネージャー」→「パッケージマネージャーコンソール」メニューを実行します。すると画面の下のほうにコンソールが表示されるので、インストーラ名を入力するとインストールできます。


使用

インストールが成功するとソリューションの packages フォルダに Json.NET のアセンブリ (Newtonsoft.Json.dll) が保存されるので、これを参照します。

プログラムで Imports 文を追加します。

  Imports Newtonsoft.Json

サンプル

オブジェクトのシリアライズ

まず対象のデータですが、サンプルとして次のように定義します。

Imports System.Text

Public Class Model
    Public Property Id As Integer
    Public Property Name As String
    Public Property Amount As Short
    Public Property [Date] As String
    
    Public Overrides Function ToString() As String
        Dim sb = New StringBuilder()
        sb.Append(Id)
        sb.Append(",")
        sb.Append(Name)
        sb.Append(",")
        sb.Append(Amount)
        sb.Append(",")
        sb.Append([Date])
        Return sb.ToString()
    End Function
End Class

シリアライズは次のように簡単にできます。

Sub TestSerialize()
    Dim data As New Model With {
        .Id = 100,
        .Name = "Figure Lupin",
        .Amount = 1,
        .[Date] = #2015/09/30#
    }
    
    ' JsonConvert.SerializeObject を使ってオブジェクトをシリアライズする。
    jsonData = JsonConvert.SerializeObject(data)
    Console.WriteLine(jsonData)
End Sub

オブジェクトの逆シリアライズ

逆シリアライズも次のように簡単にできます。

Sub TestDeserialize()
     TestSerialize()
     Dim data As Model = JsonConvert.DeserializeObject(Of Model)(jsonData)
     Console.WriteLine(data.ToString())
End Sub

 

 


 

 開設 2014年12月   著作権 2014-2015 bonk.red  連絡先: こちらからメッセージを送ってください。

 このページの先頭へ..