我遇到这个问题,我正在阅读的xml文件可能有悬空文本(我不知道那些没有被任何标签包围的文本的内容)。
例如:
<Book>
<Title>The Catcher in the Rye</Title>
<Author>Salinger</Author>
</Book>
Useless jiberish
<Book>
<Title>Jaws</Title>
<Author>Benchley</Author>
</Book>
除了“无用的jiberish”之外,它是完美的xml。读取没有任何问题,但是使用带有
的streamwriter进行编写XmlWriterSettings settings = new XmlWriterSettings();
settings.NewLineOnAttributes = true;
settings.Indent = true;
它写得很完美,直到“无用的jiberish”
<Book>
<Title>The Catcher in the Rye</Title>
<Author>Salinger</Author>
</Book>Useless jiberish<Book><Title>Jaws</Title><Author>Bencheley</Author>
如果我从xml文档中删除“Useless jiberish”,它可以完美地运行。但是我没有这个选择。有什么建议/线索,为什么会发生这种情况?我失踪可能很简单。
任何建议都有帮助。
谢谢。
答案 0 :(得分:0)
您可以考虑使用System.Xml.Linq中的XDocument类。加载文件看起来像:
string file = @"c:\test\movies.xml";
XDocument doc = XDocument.Load(file);
foreach (XElement e in doc.Root.Descendants())
{
}
有关XDocument here的更多信息。