【VB.NET】 HTMLおよびXML文書を作成する

HTML, XML文字列の生成

プログラムやアプリ内で、HTMLやXMLを出力する処理は意外に多くあります。今日は簡単にHTMLを生成する方法について紹介します。
タグ文字の作成にはXmlDocument クラスを使用することができます。以下に簡単な例を示します。

Private Sub makeHTL()
    Dim document As New Xml.XmlDocument
    Dim ul As Xml.XmlElement = Nothing
    Dim li As Xml.XmlElement = Nothing
    Dim span As Xml.XmlElement = Nothing
    Dim text As Xml.XmlText = Nothing
 
    ul = document.CreateElement("ul")                 'ulタグを作成します。
    setAttributes(document, ul, "class", "style-ul")  'ulタグにstyle-ulというクラスをセットします。
    document.AppendChild(ul)                          'ulタグをドキュメントオブジェクトに追加します。   
     
    li = document.CreateElement("li")                 'liタグを作成します。 
    setAttributes(document, li, "class", "style-li")  'liタグにstyle-liというクラスをセットします。
     
    span = document.CreateElement("span")             'spanタグを作成します。 
    Text = document.CreateTextNode("こんにちは")      'textノードを作成し、「こんにちは」という値をセットします。
    span.AppendChild(text)                            'textノードをspanタグに追加します。 
    li.AppendChild(span)                              'spanタグをliタグに追加します。   
    ul.AppendChild(li)                                'liタグをulタグに追加します。
     
    Console.WriteLine(document.InnerXml)              '生成した文字列を出力します。
Ens Sub
 
'ノードの属性値をセットする関数です。
Private Shared Sub setAttributes(ByRef doc As Xml.XmlDocument, ByRef El As Xml.XmlElement, attrName As String, attrValue As String)
    Dim attr As Xml.XmlAttribute
    attr = doc.CreateAttribute(attrName)
    attr.Value = attrValueEl.Attributes.Append(attr)
End Sub

上記のようにしてHTMLやXML文字列を作成できます。 整形していますが、出力結果は以下の通りです。

<ul class="style-ul">
    <li class="style-li">
        <span>こんにちは</span>
    </li>
</ul>

Share this content: