Xml.LoadData Данные на корневом уровне недействительны, строка 1, позиция 1. Существующие решения не помогают.C#

Место общения программистов C#
Ответить Пред. темаСлед. тема
Anonymous
 Xml.LoadData Данные на корневом уровне недействительны, строка 1, позиция 1. Существующие решения не помогают.

Сообщение Anonymous »


Я пытаюсь сохранить XML-файл, созданный из строки, в локальную память в App_Data приложения веб-службы C#. Я получаю эту ошибку, несмотря на просмотр предыдущих решений стека:

Данные на корневом уровне недействительны. Строка 1, позиция 1.

Xml-файл, который я пытаюсь сохранить в файл, представляет собой простой список узлов.

Это тестируется с помощью приложения ASP.NET на локальном хосте. (может ли это потенциально повлиять на приложение веб-сервиса? Хотя я не вижу возможности, чтобы это было возможно)

Я попробовал реализовать решения из двух предыдущих вопросов:
[*]Первый [*]Второй
Вот первый код, который я попробовал

XmlDocument doc = новый XmlDocument(); вар xmlWithEscapedCharacters = SecurityElement.Escape(finalXML); //finalXML имеет строковый тип строка _byteOrderMarkUtf8 = Encoding.UTF8.GetString(Encoding.UTF8.GetPreamble()); if((xmlWithEscapedCharacters.StartsWith(_byteOrderMarkUtf8)) { вар LastIndexOfUtf8 = _byteOrderMarkUtf8.Length - 1; xmlWithEscapedCharacters = xmlWithEscapedCharacters.Remove(0, LastIndexOfUtf8); } doc.LoadXml(xmlWithEscapedCharacters); doc.PreserveWhitespace = true; doc.Save("Parks.xml"); Затем я попробовал это из второго решения

string _byteOrderMarkUtf8 = Encoding.UTF8.GetString(Encoding.UTF8.GetPreamble()); if(xmlWithEscapedCharacters[0] == '\ufeff') { вар LastIndexOfUtf8 = _byteOrderMarkUtf8.Length - 1; xmlWithEscapedCharacters = xmlWithEscapedCharacters.Remove(0, LastIndexOfUtf8); } Потом я даже подумал, что в начале файла может быть больше одной спецификации, и попробовал

string _byteOrderMarkUtf8 = Encoding.UTF8.GetString(Encoding.UTF8.GetPreamble()); while (xmlWithEscapedCharacters[0] == '\ufeff') { вар LastIndexOfUtf8 = _byteOrderMarkUtf8.Length - 1; xmlWithEscapedCharacters = xmlWithEscapedCharacters.Remove(0, LastIndexOfUtf8); } В результате произошла ошибка тайм-аута.

Я не понимаю, что мне кажется довольно простой проблемой.

РЕДАКТИРОВАТЬ 2 (неправильный XML-файл, извините): Вот пример допустимого XML-файла. Я добавляю узел с помощью этого кода.
978-0132309981 Внутреннее устройство операционных систем и принципы проектирования Уильям Задержки 480-965-0000 Прентис Холл 2011
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «C#»