C# 跳过任何内容到下一个标签
C# Skip anything to next tag
我有一个 xml 格式的日志文件,如
<log> // skip this node
<?xml version="1.0" encoding="UTF-8"?>
<qbean logger="main-logger">
</qbean>
</log>
<log> // go to this node
</log>
现在 ReadToNextSibling("log") 抛出异常,我需要跳过第一个 "log" 标记的内容并移动到下一个 "log" 标记而不抛出异常。
有办法吗?
提示:
- 您的 XML 无效,因为
<?xml version="1.0" encoding="UTF-8"?>
必须位于根元素之前。如果可以解决您的问题,您可以搜索并删除它。您可以使用 yourXml.Repalce("<?xml version=\"1.0\" encoding=\"UTF-8\"?>", "")
- 您必须为您的 XML 创建根元素才能有效解析。
然后,您可以使用 XmlDocument
class 来解析您拥有的 XML 数据并跳过任何您想要的内容。你需要这样的东西:
var document = new XmlDocument();
document.LoadXml(yourXml);
document.DocumentElement.ChildNodes[1]
我有一个 xml 格式的日志文件,如
<log> // skip this node
<?xml version="1.0" encoding="UTF-8"?>
<qbean logger="main-logger">
</qbean>
</log>
<log> // go to this node
</log>
现在 ReadToNextSibling("log") 抛出异常,我需要跳过第一个 "log" 标记的内容并移动到下一个 "log" 标记而不抛出异常。 有办法吗?
提示:
- 您的 XML 无效,因为
<?xml version="1.0" encoding="UTF-8"?>
必须位于根元素之前。如果可以解决您的问题,您可以搜索并删除它。您可以使用yourXml.Repalce("<?xml version=\"1.0\" encoding=\"UTF-8\"?>", "")
- 您必须为您的 XML 创建根元素才能有效解析。
然后,您可以使用 XmlDocument
class 来解析您拥有的 XML 数据并跳过任何您想要的内容。你需要这样的东西:
var document = new XmlDocument();
document.LoadXml(yourXml);
document.DocumentElement.ChildNodes[1]