Как прочитать строку с атрибутом? Xml
Есть допустим такой xml-файл:
<?xml version="1.0" encoding="UTF-8"?>
<data>
<UTF-8 />
<string id="book">бла-бла</string>
<string id="book_anatomy">бла-бла-бла</string>
</data>
Как прочитать строку по атрибуту и получит с нее текст в C#? Например, мне нужно получить текст "бла-бла" из строки id="book", как это сделать?
Ответы (1 шт):
Автор решения: Yitzhak Khabinsky
→ Ссылка
Вот как это сделать. Используя LINQ to XML API.
c#
void Main()
{
const string fileName = @"e:\Temp\hex.xml";
XDocument xdoc = XDocument.Load(fileName);
string xelem = xdoc.Descendants("string")
.Where(x => x.Attribute("id").Value.Equals("book"))
.FirstOrDefault()?.Value;
Console.WriteLine(xelem);
}
Output
бла-бла