Из этой небольшой статьи вы узнаете, как запись данных в xml файл с помощью языка c#
1. Создадим новый проект типа Windows Forms Application и добавим на форму кнопку, при нажатии на которую будет осуществляться запись в xml файл.
2. Добавим в проект xml файл, который содержит следующую структуру:
3. Для работы с xml файлами воспользуемся технологией Linq to XML. Для этого в коде добавим следующую строку:
4. С помощью метода Load загружаем xml файл.
5. Далее описываем какую-то логику, действия, которые необходимо выполнить с загруженным в память документом. Например, изменим имя пользователя с фамилией Иванов на Александр.
6. После выполнения выше описанной операции все изменения произойдут только в документе расположенном памяти и при этом никак не затронут физический файл. Исправим это и с помощью метода Save запишем данные в xml файл.
Полный листинг
Результат:
Читайте также:
1. Создадим новый проект типа Windows Forms Application и добавим на форму кнопку, при нажатии на которую будет осуществляться запись в xml файл.
2. Добавим в проект xml файл, который содержит следующую структуру:
Код:
<users>
<user id="1">
<name>Петя</name>
<lastname>Петров</lastname>
<age>23</age>
</user>
<user id="2">
<name>Иван</name>
<lastname>Иванов</lastname>
<age>24</age>
</user>
<user id="3">
<name>Сергей</name>
<lastname>Сидоров</lastname>
<age>25</age>
</user>
</users>
Код:
using System.Xml.Linq;
Код:
XDocument xDoc = XDocument.Load("путь к xml файлу");
6. После выполнения выше описанной операции все изменения произойдут только в документе расположенном памяти и при этом никак не затронут физический файл. Исправим это и с помощью метода Save запишем данные в xml файл.
Код:
xDoc.Save("путь к xml файлу");
Код:
private void button1_Click(object sender, EventArgs e)
{
string xmlFilePath = @"../../users.xml";
XDocument xDoc = XDocument.Load(xmlFilePath);
IEnumerable <XElement> xElms;
xElms = xDoc.Descendants("user").
Where(x => x.Element("lastname").Value == "Иванов");
foreach (XElement xElm in xElms)
{
xElm.Element("name").Value = "Александр";
}
xDoc.Save(xmlFilePath);
}
Код:
<user id="2">
<name>Александр</name>
<lastname>Иванов</lastname>
<age>24</age>
</user>