вот xml-файл, который я хочу получить. он содержит сведения о стихийных бедствиях номер 01,02,03 и далее. катастрофы идентифицируются по идентификатору бедствия.Как добавить к существующему файлу xml как набор атрибутов
<?xml version="1.0" encoding="utf-8" ?>
<disasters>
<disaster ID="001"
disaterType="Flood"
location="Matara"
date="20-01-2012"
noOfVictims="245">
<victims>
<victim type="adult"
gender="male"
amount="46"
/>
<victim type="children"
gender="female"
amount="460"/>
</victims>
<requiredItems>
<requiredItem type="Food"
itemName="Rice"
description="null"
quantity="367"/>
<requiredItem type="Stationary"
itemName="Pens"
description="null"
quantity="87"/>
</requiredItems>
</disaster>
<disaster ID="002" // This is a separate disaster detail list
disaterType="Tsunami"
location="Galle"
date="10-05-2009"
noOfVictims="845">
<victims>
<victim type="children"
gender="male"
amount="46"
/>
<victim type="children"
gender="female"
amount="460"/>
</victims>
<requiredItems>
<requiredItem type="Clothes"
itemName="Tshirts"
description="male"
quantity="67"/>
<requiredItem type="Food"
itemName="bread"
description="null"
quantity="37"/>
</requiredItems>
</disaster> // end of the second list of disaster details
</disasters>
вот мой код. но это только добавляет новый идентификатор бедствия. Остальные детали добавляются неправильно. код ** будет добавлен к первому идентификатору бедствия, но я хочу добавить их во вторую катастрофу и определить их как новую катастрофу. Заранее благодарен
if (System.IO.File.Exists(path))
{
XmlDocument xDoc = new XmlDocument();
xDoc.Load("C:\\4 ITP la laaa\\me doing\\disasters.xml");
XmlNode xNode = xDoc.CreateNode(XmlNodeType.Element, "disaster", "");
XmlAttribute id = xDoc.CreateAttribute("ID");
XmlAttribute disaterType = xDoc.CreateAttribute("value");
XmlAttribute location = xDoc.CreateAttribute("value1");
XmlAttribute date = xDoc.CreateAttribute("value2");
XmlAttribute noOfVictims = xDoc.CreateAttribute("value3");
id.Value = "001";
disaterType.Value = "Flood";
date.Value = " value1";
noOfVictims.Value = "date";
xNode.Attributes.Append(id);
xNode.Attributes.Append(disaterType);
--
--
XmlNode xNode1 = xDoc.CreateNode(XmlNodeType.Element, "victims", "");
XmlAttribute type = xDoc.CreateAttribute("type");
type.Value = "adult";
gender.Value = "male";
value.Value = "46";
--
--
xDoc.GetElementsByTagName("disasters")[0].InsertAfter(xNode, xDoc.GetElementsByTagName("disasters")[0].LastChild);
**xDoc.GetElementsByTagName("victims")[0].InsertAfter(xNode1, xDoc.GetElementsByTagName("victims")[0].LastChild);**
xDoc.Save("C:\\4 ITP la laaa\\me doing\\disasters.xml");
Label1.Text=("Apended");
Вы должны использовать XmlDocument? Это намного проще и понятнее с XDoucment. –
Не могли бы вы помочь мне в этом вопросе. Я хочу добавить отдельные детали стихийных бедствий к существующим деталям бедствия. Спасибо – Priyankara