У меня есть XML-файл, который содержит несколько сообщений в одном большом файле, поэтому я хочу разбить файл на отдельный файл xml для каждого сообщения, у меня есть код aC#, который только дает мне первый экземпляр сообщение. Пожалуйста, вы можете сказать, что я здесь отсутствует:Сплит XML-файл в C#
Вот мой код:
string strSeq;
string strFileName;
XDocument doc = XDocument.Load(@"C:\XMl\MR.xml");
var newDocs = doc.Descendants("Message")
.Select(d => new XDocument(new XElement("FileDump", d)));
foreach (var newDoc in newDocs)
{
strSeq = XDocument.Load(@"C:\XMl\MR.xml").XPathSelectElement
"//FileDump/Message/MsgID").Value;
strFileName = "MR_" + strSeq + ".xml";
newDoc.Save(Console.Out); Console.WriteLine();
newDoc.Save(@"C:\xml\MR\Tst\" + strFileName);
Console.WriteLine();
}
Marcins: когда я изменил строку, чтобы найти сообщение в рамках newdoc, я получаю следующее error: Невозможно преобразовать группу методов «XPathSelectElement» в тип «string» без делегата. Это ошибка, которую я получаю, когда я изменил код на ваш –
@MoeR '(' отсутствует. Попробуйте сейчас. – MarcinJuraszek
oops sorry lol. Он работает как приятель шарма –