Как использовать класс XmlReader?

предположим, что выражение:

int a=10;
printf("a=%d",printf("b=%d",a));

вывод

b=10 a=4;

b из-за значения, присвоенного b то есть

b=10;

и

b,=,1,0   

считается как четыре и присваивает a то есть:

a=4;
12
задан Ramesh Soni 24 May 2009 в 16:40
поделиться

4 ответа

Лично я перешел с XMLReader на System.XML.Linq.XDocument для управления своими файлами данных XML. Таким образом, я могу легко извлекать данные из xml в объекты и управлять ими, как любым другим объектом в моей программе. Когда я закончу манипулировать ими, я могу просто сохранить изменения обратно в XML-файл в любое время.

        //Load my xml document
        XDocument myData = XDocument.Load(PhysicalApplicationPath + "/Data.xml");

        //Create my new object
        HelpItem newitem = new HelpItem();
        newitem.Answer = answer;
        newitem.Question = question;
        newitem.Category = category;

        //Find the Parent Node and then add the new item to it.
        XElement helpItems = myData.Descendants("HelpItems").First();
        helpItems.Add(newitem.XmlHelpItem());

        //then save it back out to the file system
        myData.Save(PhysicalApplicationPath + "/Data.xml");

Если я хочу использовать эти данные в легко управляемом наборе данных, я могу привязать его к списку моих объектов.

        //Load my xml document
        XDocument myData = XDocument.Load(PhysicalApplicationPath + "/Data.xml");

        //Create my new object
        HelpItem newitem = new HelpItem();
        newitem.Answer = answer;
        newitem.Question = question;
        newitem.Category = category;

        //Find the Parent Node and then add the new item to it.
        XElement helpItems = myData.Descendants("HelpItems").First();
        helpItems.Add(newitem.XmlHelpItem());

        //then save it back out to the file system
        myData.Save(PhysicalApplicationPath + "/Data.xml");

1272] Теперь его можно передавать и манипулировать с помощью любых функций, присущих моему объектному классу.

Для удобства в моем классе есть функция, которая создает себя как узел xml.

public XElement XmlHelpItem()
    {
        XElement helpitem = new XElement("HelpItem");
        XElement category = new XElement("Category", Category);
        XElement question = new XElement("Question", Question);
        XElement answer = new XElement("Answer", Answer);
        helpitem.Add(category);
        helpitem.Add(question);
        helpitem.Add(answer);
        return helpitem;
    }
9
ответ дан 2 December 2019 в 04:25
поделиться

В MSDN есть простой пример, с которого вы можете начать здесь .

Если вас интересует чтение и запись XML-документов, а не просто использование класса XmlReader , есть хорошая статья, описывающая некоторые из ваших вариантов здесь .

Но если вы просто хотите начать и поиграть, попробуйте следующее:

 XmlReaderSettings settings = new XmlReaderSettings();
 settings.IgnoreWhitespace = true;
 settings.IgnoreComments = true;
 XmlReader reader = XmlReader.Create("file.xml", settings);
12
ответ дан 2 December 2019 в 04:25
поделиться

Следует использовать метод Create вместо использования new , поскольку XmlReader является абстрактным классом ] с использованием шаблона Factory .

var xmlReader = XmlReader.Create("xmlfile.xml");
7
ответ дан 2 December 2019 в 04:25
поделиться

Из отличного C # 3.0 в двух словах , рассмотрите пример кода из главы 11.

6
ответ дан 2 December 2019 в 04:25
поделиться
Другие вопросы по тегам:

Похожие вопросы: