前回はLINQ to XMLを使用して、XMLファイルを作成する方法について紹介しました。
今回はXMLファイルの作成と同時に値を追加する方法について見ていきます。
今回作成するプログラムから作成されるXMLは以下の通りです。
作成されるXML
<?xml version="1.0" encoding="utf-8"?>
<部署データ>
<部署>
<部署名>企画部</部署名>
<部長名>佐藤</部長名>
</部署>
<部署>
<部署名>開発部</部署名>
<部長名>高橋</部長名>
</部署>
<部署>
<部署名>営業部</部署名>
<部長名>伊藤</部長名>
</部署>
</部署データ>
XMLElementクラスで値を設定する
前回は、XMLElementの第1引数のみを設定し、要素だけを作成しましたが、第2引数を設定すると、第1引数の要素に対する値を設定することができます。
VB
Public Sub New ( _ name As XName, _ '要素名 content As Object _ '要素の値 )
C#
public XElement( XName name, // 要素名 Object content // 要素の値 )
このことを利用して、以下のようなコードを記述すると、最初に示したXMLファイルを作成することができます。
VBの例
Dim XDoc = New XDocument(New XDeclaration("1.0", "utf-8", True),
New XElement("部署データ",
New XElement("部署",
New XElement("部署名", "企画部"),
New XElement("部長名", "佐藤")
),
New XElement("部署",
New XElement("部署名", "開発部"),
New XElement("部長名", "高橋")
),
New XElement("部署",
New XElement("部署名", "営業部"),
New XElement("部長名", "伊藤")
)
)
)
XDoc.Save("C:\Work\MyCompany.xml")
C#の例
var XDoc = new XDocument(new XDeclaration("1.0", "utf-8", "true"),
new XElement("部署データ",
new XElement("部署",
new XElement("部署名", "企画部"),
new XElement("部長名", "佐藤")
),
new XElement("部署",
new XElement("部署名", "開発部"),
new XElement("部長名", "高橋")
),
new XElement("部署",
new XElement("部署名", "営業部"),
new XElement("部長名", "伊藤")
)
)
);
XDoc.Save(@"C:\Work\MyCompany.xml");
Please follow and like us:

コメント