0

このようなxmlファイルがあります

<?xml version="1.0" encoding="utf-8"?>
<ArrayOfOffice xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"   xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<Offices>
<Office>
<OfficeId>5</OfficeId>
<OfficeName>NewOne1</OfficeName>
<City>Mehsana1</City>
<Country>India1</Country>
</Office>
<Office>
<OfficeId>8</OfficeId>
<OfficeName>NewOne</OfficeName>
<City>Mehsna1</City>
<Country>Country</Country>
</Office>
<Office>
<OfficeId>9</OfficeId>
<OfficeName>Nataraj</OfficeName>
<City>Mehsana</City>
<Country>India</Country>
</Office>
<Office>
<OfficeId>10</OfficeId>
<OfficeName>Nere1</OfficeName>
<City>Nere1</City>
<Country>USA1</Country>
</Office>
<Office>
<OfficeId>11</OfficeId>
<OfficeName>Nataraj</OfficeName>
<City>Mehsana</City>
<Country>India</Country>
</Office>
<Office>
<OfficeId>15</OfficeId>
<OfficeName>Nere1</OfficeName>
<City>Nere1</City>
<Country>USA1</Country>
</Office>
</Offices>
</ArrayOfOffice>

<Offices>タグに属性を追加したい<Offices Multi="Y">..........</Offices>

Multi="Y"C#を使用してOfficesノードでこれを設定するにはどうすればよいですか? xml ファイルを編集して、その xml ファイルに保存し直す必要がありますか?

ありがとう。

4

1 に答える 1

1

XDocumentを使用してXMLファイルをロードし、Multi属性をOfficesタグに追加して保存し直すことができます。

var doc = XDocument.Load("test.xml");
var offices = doc.Element("ArrayOfOffice").Element("Offices");
offices.Add(new XAttribute("Multi", "Y"));
doc.Save("test.xml");

または、.NET 3.5より古いバージョンを使用している場合は、 XmlDocumentを使用します。

var doc = new XmlDocument();
doc.Load("test.xml");
var offices = doc.DocumentElement.SelectSingleNode("Offices");
var multi = doc.CreateAttribute("Multi");
multi.Value = "Y";
offices.Attributes.Append(multi);
doc.Save("test.xml");
于 2012-05-21T11:00:52.737 に答える