У меня есть следующая строка ввода, которая из текстового файла 10 МБ. Иногда иногда есть \ n и другие значения между элементами xml.Анализ нескольких объектов XML в одном файле
string data = "\n<?xml version=\"1.0\" encoding=\"UTF-8\"?><element1 value=\"3\"><sub>1</sub></element1>\n<element1><sub><element>2</element></sub></element1>\n \n<element2><sub>3</sub></element2>\n \n<element2><sub>4</sub></element2>";
теперь я хочу эту строку на element1
и element2
XML узлов
результат в этом случае должно быть
output[0] = "<element1 value=\"3\"><sub>1</sub></element1>";
output[1] = "<element1><sub><element>2</element></sub></element1>";
output[2] = "<element2><sub>3</sub></element2>";
output[3] = "<element2><sub>4</sub></element2>";
Я попытался
string[] output= input.Split(new string[] { "<element1>", "<element2>" }, StringSplitOptions.None);
но он бросает из памяти, кроме ионов, а делетитор удаляется при расщеплении.
и
XmlDocument xml = new XmlDocument();
xml.LoadXml("<root>"+data +"</root>");
бросает исключение
есть простой способ разбора этих XML-элементы из моего текстового файла?
У вас есть недопустимый XML из: поговорите с ним и попросите предоставить действительный XML. Все остальное - взломать и рано сломается. –
каждый XML для своего двенадцати действителен, но они разделены метаданными и разрывами строк. – Byyo
Можете ли вы рассказать, какое исключение вызывается при попытке загрузить его в XmlDocument. –