VB.Netのお勉強



XmlSerializerを利用@VB.Net

XmlSerializerを利用します。
オブジェクトをXML形式にシリアライズします。

シリアライズするクラスを作成します。

Public Class XmlSerializerClass

    Public itemA As String
    Public itemB As String
    Public itemC() As String

    Public Sub New()
    End Sub

End Class


シリアライズ、デシリアライズ処理を行います。

シリアライズ処理
作成したクラスのタイプを指定し、XmlSerializerを生成します。
作成したクラスを生成し、値を格納します。

FileStreamを生成し、生成したクラスのオブジェクトをXmlSerializerの
Serializeメソッドに渡します。

デシリアライズ処理
FileStreamを生成し、Deserializeに渡し、
作成したクラスオブジェクトを取得します。


'System.Xml.Serialization.XmlSerializer
Dim xmlSerializer As XmlSerializer

'xmlSerialize生成
xmlSerializer = New XmlSerializer(GetType(XmlSerializerClass))

'xmlシリアルするクラスのオブジェクト生成
Dim outSerializeObj As XmlSerializerClass = New XmlSerializerClass()
outSerializeObj.itemA = "AAA"
outSerializeObj.itemB = "BBB"
outSerializeObj.itemC = New String() {"C1", "C2", "C3"}

'xmlシリアル処理
Using fileStream As New FileStream("c:\test.xml", FileMode.Create)
    xmlSerializer.Serialize(fileStream, outSerializeObj)
End Using

Console.WriteLine("XMLシリアル処理を行いました。")

'xmデシリアル処理
Dim inSerializeObj As XmlSerializerClass
Using fileStream As New System.IO.FileStream("c:\test.xml", FileMode.Open)
    'デシリアル
    inSerializeObj = xmlSerializer.Deserialize(fileStream)
End Using

Console.WriteLine("XMLデシリアル処理を行いました。")


XmlSerializerで作成されたxmlファイル

<?xml version="1.0"?>
<XmlSerializerClass xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
    <itemA>AAA</itemA>
    <itemB>BBB</itemB>
    <itemC>
        <string>C1</string>
        <string>C2</string>
        <string>C3</string>
    </itemC>
</XmlSerializerClass>




Copyright (C) 2008-2011 VB.Netのお勉強. All Rights Reserved.