2016-09-06 6 views
0

Я пытаюсь загрузить «;» в документе Xml для моей формы в коде работал нормально до вчерашнего дня, когда я получил сообщение об ошибке ниже для некоторого резонанса, я не внес никаких изменений в код.System.Xml.XmlException в C#

Ошибка: «Необработанное исключение типа„System.Xml.XmlException“произошло в system.Xml.dll Дополнительная информация:. Данные на корневом уровне недействителен Line 1, позиция 1.»

Кодекс:

XmlDocument myContacts = new XmlDocument(); 
string path = "C:\\Users\\Name\\\mycontacts.xml"; 

private void LoadContacts() 
    { 
     myContacts.LoadXml(path); 

     foreach (XmlNode node in myContacts.SelectNodes("Contacts/Contact")) 
     { 
      lstContacts.Items.Add(node.SelectSingleNode("Name").InnerText); 
     } 
    } 

Я попытался Linq (XDocument), чтобы получить, но та же проблема там, но на ";" в главном Program.cs.

Application.Run(new Form1()); 

Я столкнулся с ошибкой и попытался исправить решение Джеймса Шуберта безрезультатно.

XML:

<?xml version="1.0" encoding="UTF-8"?> 
<Contacts> 
    <Contact> 
     <Name>Testing</Name> 
     <Email>[email protected]</Email> 
     <Phone>070 00 00 000</Phone> 
     <Street>Test A1</Street> 
     <Zip>000 00</Zip> 
     <Town>Testing</Town> 
    </Contact> 
</Contacts> 

Я знаю, что есть много потоков на уже тему, но не может получить какой-либо из своих ответов/решений для работы.

Есть ли еще «волшебные» способы решения этой проблемы, чем те, которые я смог найти при поиске решений?

+1

Более подробная разница между Load/LoadXml - http://stackoverflow.com/questions/1660676/xmldocument-load-vs-xmldocument-loadxml. –

ответ

2

XmlDocument.LoadXml для синтаксический разбор XML-строки. Пример из документации:

XmlDocument doc = new XmlDocument(); 
doc.LoadXml("<item><name>wrench</name></item>"); 

Для загрузки из файла, используйте XmlDocument.Load.

Как бы в стороне, я бы предложил вам взглянуть на LINQ to XML, если вы еще этого не сделали. Это гораздо более удобный API.

+1

Не совсем новый подход, но действительно правильный (много похожих сообщений, таких как http://stackoverflow.com/questions/1660676/xmldocument-load-vs-xmldocument-loadxml) –

Смежные вопросы